专利摘要:
  SNAP MOBILE PAYMENT SYSTEMS, METHODS AND DEVICES.Snap Mobile Payment Systems, Methods and Appliances ("SNAP") transform real-time merchant product Quick Response codes generated from SNAP components into e-wallet card-based transaction purchase notifications. In one embodiment, SNAP takes a screenshot of a QR code presented on a point-of-sale device display screen from a mobile device. SNAP decodes the QR code for product information included in a user's checkout request, and merchant information for processing a user purchase transaction with a merchant providing the QR code. SNAP accesses a user's virtual wallet in order to obtain user account information to process the user's purchase transaction with the merchant. Using product information, merchant information, and user account information, SNAP generates a card authorization request, which SNAP provides to a payment network for transaction processing. Additionally, SNAP obtains a purchase receipt that confirms user purchase transaction processing.
公开号:BR112013021059A2
申请号:R112013021059-1
申请日:2012-02-16
公开日:2020-10-27
发明作者:Ayman Hammad;Igor Karpenko;Miroslav Gavrilov;Abhinav Shrivastava;Mark Carlson;Prakash Hariramani
申请人:Visa International Service Association;
IPC主号:
专利说明:

' “SNAP MOBILE PAYMENT SYSTEMS, METHODS AND DEVICES” This patent application disclosure document (hereinafter "description" and/or "descriptions") describes innovative aspects aimed at several unpublished innovations (hereinafter "description" and/or "descriptions") innovation", "innovations", and/or ""innovation(s)") and contains material that is subject to copyright, integrated circuit topography, and/or other intellectual property protection. The respective owners of such intellectual property do not object to facsimile reproduction of the patent document disclosed by anyone as it appears in published Patent Office records/files, but reserve all rights otherwise.
PRIORITY CLAIM This application claims priority under 35 USC $119 from: Provisional Patent Application Serial No. US 61/443,624 filed February 16, 2011 entitled "MOBILE CAPTURE CHECKOUT APPARATUSES, METHODS AND SYSTEMS", attorney file number P-42032PRVI 20270-127PV; Provisional Patent Application Serial No. US 61/512,248 filed on July 27, 2011, entitled "SNAP MOBILE PAYMENT APPARATUSES, METHODS AND SYSTEMS", attorney file number 10US011 20270-175PV; Provisional Patent Application Serial No. US 61/522,213 filed on August 10, 2011, entitled "UNIVERSAL MOBILE PAYMENT PLATFORM APPARATUSES, METHODS AND SYSTEMS", Attorney Dossier No. 10US03I 20270-175PV2; and Provisional Patent Application Serial No. US 61/527,576 filed on August 2011, entitled "SNAP MOBILE PAYMENT APPARATUSES, METHODS AND SYSTEMS”, attorney file number 10US02 | 20270-175PV1. The content of the previously mentioned requests is expressly incorporated by way of interference in its entirety in this document. 25 FIELD The present inventions are generally directed to apparatus, methods, and systems for electronic purchase transactions, and more particularly, to MOBILE DEVICE PAYMENT BY SNAP ("SNAP") SYSTEMS, METHODS AND DEVICE.
BACKGROUND Consumer transactions typically require a consumer to select a product from a store shelf or website, and then complete the purchase on a web page or checkout counter. Product information is typically selected from a web page catalog or entered into a point of sale terminal device. In a physical retail environment, product information is automatically entered by scanning an item barcode with an integrated barcode scanner in a point of sale register, and the consumer is typically provided with multiple payment options such as cash, check, card
Ú 2/81" credit or debit card. Once payment has been made and approved, the point of sale registrar memorizes the transaction in the merchant's computer system, and a receipt is generated indicating satisfactory completion of the transaction. transaction.
BRIEF DESCRIPTION OF THE DRAWINGS The appendices and/or accompanying drawings illustrate various non-limiting exemplifying innovative aspects in accordance with the present disclosure: Figures 1h to F show block diagrams illustrating exemplary aspects of a mobile device payment-based purchase transaction by snapping in some SNAP modes; Figures 2A through F show application user interface diagrams illustrating exemplary attributes of a mobile device snap payment application that facilitates mobile device snap payment in some embodiments of SNAP; Figures 3A through E show application user interface diagrams illustrating exemplary attributes of a mobile device snap payment application to capture product barcodes, secure user data, and prevent fraud in some SNAP embodiments; Figures 4A to D show data flowcharts illustrating an exemplary snap mobile device payment procedure in some SNAP embodiments; Figures 5A through E show logic flowcharts illustrating exemplary aspects of executing a mobile device payment by snap in some SNAP embodiments, for example, a Mobile Device Payment Execution by Snap (“SMPE”) component 500; Figures 6A through B show logic flowcharts illustrating exemplary aspects of Quick Response code processing in some embodiments of SNAP, for example, a Quick Response Code Processing ("QRCP") component 600; Figure 7 shows a user interface diagram illustrating an overview of exemplary attributes of virtual wallet applications in some SNAP modalities; Figures 8A to G show user interface diagrams illustrating exemplary attributes of virtual wallet applications in a consumption mode in some SNAP embodiments; Figures 9A to F show user interface diagrams illustrating exemplary attributes of virtual wallet applications in a payment mode in some SNAP embodiments;
, Figure 10 shows a user interface diagram illustrating exemplary attributes of virtual wallet applications, in a history mode, in some SNAP modes; Figures 11A to F show user interface diagrams illustrating exemplary attributes of virtual wallet applications in a snap mode, in some SNAP embodiments; Figure 12 shows a user interface diagram illustrating exemplary attributes of virtual wallet applications, in an offer mode, in some SNAP modes; Figures 13A to B show user interface diagrams illustrating exemplary attributes of virtual wallet applications, in a security and privacy mode, in some SNAP embodiments; Figure 14 shows a block diagram illustrating embodiments of a SNAP controller.
The front number of each reference number in the drawings indicates the Figure in which that reference number is introduced and/or detailed. As such, a detailed discussion of reference numeral 101 would be found and/or introduced in Figure 1. Reference numeral 201 is introduced in Figure 2, etc.
DETAILED DESCRIPTION SNAP MOBILE DEVICE PAYMENT (SNAP) SNAP MOBILE DEVICE PAYMENT SYSTEMS, METHODS AND DEVICES (hereinafter "SNAP") transform merchant product Quick Response codes generated in real-time through SNAP components, in virtual wallet card-based transaction purchase notifications Figures 1h to F show block diagrams that illustrate illustrative aspects of a purchase transaction based on mobile device payment via snap in some SNAP modalities. Referring to Figure 1A, in some deployments, a user, for example, 101a-b, may wish to purchase products at a merchant store, for example, 103a, or on a merchant's website, for example, 103b. For example, in a merchant store, the user can scan barcodes for various products, e.g. 102a, at an in-store point of sale (“POS”) terminal, e.g. 103a, and then indicate that the user wants to complete the purchase of the scanned items. In some deployments, the POS terminal may generate a Quick Response (“QR”) code, e.g. 105a, including information on the scanned product items, as well as merchant information to process the purchase transaction through a network. of payment. The user can capture an image of the QR code generated by the POS terminal using a user device such as a smart phone.
: For example, the user device may have an application running on it to photograph the merchant's product QR code. The user device can use the information extracted from the QR code, along with information in a virtual wallet linked to the user device to initiate the purchase transaction. For example, the user device can use the product and merchant information extracted from the OR code, and financial payment information from the virtual wallet, to create a purchase transaction request, and submit the request to a payment network (e.g. example, credit card processing network). In some deployments, the user device may use alternative methods — to capture a QR code to obtain information from the POS terminal. For example, the POS terminal may communicate the information required to submit a purchase transaction request to a payment network to the user's device via Bluetooth!Y, Wi-Fi, SMS, text message, electronic mail, and /or other methods of communication.
In some deployments, a user 101b may wish to terminate the purchase of items stored in a virtual shopping cart on an online consumer website, for example, 102b. For example, the user may view the website using a secure display (eg, one that is part of a user's trusted computing device). Upon indication that the user wishes to complete the purchase of items in the virtual shopping cart, the website may provide a QR code including information about the products in the virtual shopping cart and merchant information. For example, in the scenario where the user uses a secure view, the QR code can be displayed at a random position within the secure view for security purposes. The user can capture a screenshot of the displayed QR code, and use payment information from the virtual wallet associated with the user's device to create a purchase transaction request for processing by the payment network. Upon completing the purchase transaction, the payment network may provide a purchase receipt, e.g. 107 directly to the user device 106, the in-store POS terminal and/or the secure display (for the secure online consumption scenario) as confirmation of completeness of transaction processing. Thus, in some deployments, the merchant may be prevented from obtaining the user's personal and/or private information while processing the purchase transaction, while ensuring the integrity of the user's virtual wallet using a secure display to present the QR code. merchant's product.
In many deployments, such payment processing can be used for a wide variety of transactions. For example, a user who eats at a restaurant might get an invoice including a QR payment code, including
, details of the meal charges included in the invoice, and a merchant ID for the restaurant. The user can take a screenshot of the restaurant bill using the user's smart phone, and use the user's virtual wallet to pay for the restaurant bill, without revealing any financial or personal information about the user to the restaurant.
Referring to Figure 1B, in some deployments, e.g. 110, a user 111 may wish to end the purchase of items stored in a (virtual) shopping cart at a consumer (online) store, e.g. 112, with the use of a reverse snap mobile device payment procedure. For example, the user may view the website using a secure display that is part of a user's trusted computing device, eg 113, or through a POS terminal in a physical store. Upon indicating that the User wishes to complete the purchase of the items in the virtual shopping cart, the User may generate, for example, 114, a QR code 115b via a mobile device application on the User's mobile device, including information about the user's payment methods, offers, rewards, and/or other aspects connected to the user's virtual wallet. The User may provide the QR code displayed on the User's mobile device to a webcam-type video camera (or other QR code capture mechanism and/or device) installed on the trusted computing device (or POS terminal). The user's trusted computing device or POS terminal can take a screenshot of the QR code generated by the user's mobile device, e.g. 116, and use payment information from the user generated QR code to create a purchase request. purchase transaction for processing by the payment network. Upon completing the purchase transaction, the payment network may provide a purchase receipt directly to the user's mobile device, in-store POS terminal, and/or secure display (for online consumption scenario) as confirmation of completion of processing. of transaction. Thus, in some deployments, the user may be able to use a QR code generated by the user's mobile device as a replacement for a plastic payment card (e.g. credit, debit or prepaid card), or as a substitute for other financial information transport mechanisms such as near field communications, BluetoothO, etc. In some deployments, the QR code may be representative of a credit card number that has been anonymized once (for example, see the description associated with Figure 3B). In some implementations, a first user 121b may wish to pay a second user 121 an amount of money (or an equivalent amount, e.g., virtual currency, alternative real currency, rewards, mileage, points, etc.), e.g., payment of mobile device via P2P snap 120. The second user 121a can generate
' a QR code valid for a limited time, eg 122, including information about the amount of money to be transferred, as well as a privacy token/pseudonym linked to a second user's financial account.
The second user can display the generated QR code to the first user (e.g. by holding the second user's mobile phone showing the QR code to the first user; send the QR code via email, social media message , tweet type message, etc.). The first user can take a screenshot of the QR code using the first user's mobile phone, e.g. 123, and use the amount of money, with the second user's privacy token/alias linking to an account and the first user's virtual wallet linked to the first user's mobile phone to generate a purchase transaction request for processing by the payment network.
Upon completion of the transaction, the payment network may provide transaction notification receipts to users who are part of the transaction.
In alternate deployments, the two users can share the data encoded in the QR code through alternative methods to the QR code, including but not limited to: near field communications (NFC), Wi-Fi!M, Bluetooth' Y, cellular network, SMS, email,
text messaging and/or other communication protocols.
In general, it should be understood that such tokens, aliases and/or identifiers may be advantageously used in various mobile snap payment deployments.
For example, a user who wants to participate in a reverse snap mobile device payment procedure (see, for example, Figure 1B, element 110) can generate information that embeds a QR code in an identifier that points to financial payment information stored in a server of a payment network system.
For example, some mobile device payment deployments by —snap may utilize, generate and/or process identifiers, a payment tokenization procedure similar to that described in US application 13/153,301 entitled "Payment tokenization apparatuses, methods and systems”, whose entire content is expressly incorporated by way of interference in this document.
Additionally, in some deployments, the identifier may encode information in accordance with a — compact messaging protocol, as described in US Patent No. 6,837,425 entitled “Compact protocol and solution for substantially offline messaging between portable consumer device and based device” , whose entire content is expressly incorporated by way of interference in this document.
In some reverse snapping mobile device deployments, the user may provide the QR code that embeds the identifier and displayed on the user's mobile device to a webcam-type video camera (or other QR code capture mechanism and/or device). QR) installed on the trusted computing device (or POS terminal). the computing device
, trusted or POS terminal of the user can take a screenshot of the QR code generated by the user's mobile device, e.g. 116, and provide the identifier extracted from the QR code to a merchant server for purchase transaction request for processing by the payment network. The merchant server may generate a card authorization request (as described further below in the discussion in reference to Figure 4A) to process the purchase transaction using the identifier, and may provide the card authorization request to a network of payment. Upon completing the purchase transaction, the payment network may provide a purchase receipt directly to the user's mobile device, in-store POS terminal, and/or secure display (e.g. for online consumption scenario) as confirmation of completion. transaction processing using the identifier.
In some deployments, a user alert mechanism can be integrated into the snap mobile payment purchase transaction process flow. For example, in some deployments, a merchant server may embed a transaction-specific URL in the card authorization request. For example, in some deployments, a POS terminal, remote device and/or desktop computer may embed the URL in optional Level 3 data in the card authorization request. The URL may point to a web page stored on the merchant's server dedicated to the transaction that is the subject of the card authorization request. For example, the web page pointed to by the URL may include details about the purchase transaction, for example, products that are purchased, purchase cost, expiration date, order processing status, and/or the like. Thus, the merchant server can provide the payment network with the transaction details by passing the webpage URL to the payment network. In some deployments, the payment network may provide user notifications such as a payment receipt, transaction authorization confirmation message, shipping notification, and/or the like. In such messages, the payment network may provide the URL to the user's device. The User may navigate to the URL on the User's device to obtain alerts regarding the User's purchase, as well as other information such as offers, coupons, related products, reward notifications, and/or the like.
In some deployments, multiple users can participate in group payment via mobile device payment by snap to split a proposal, eg 130. In some deployments, one of the 131a users can take the screenshot e.g. 132 , from a QR payment code, e.g. 134, generated at a POS terminal (or e.g. presented on paper, as a meal bill), e.g. 133. The user can in return generate a OR split payment, which incorporates information about the amounts the proposal was split into. User 131a
' can present the split proposal QR code 135 to other 131b-c users, who can get screenshots of the split proposal QR code, for example 136. In some deployments, 131b-c users can refund the user 131a by paying the original QR code through the payment network, or 131b-c users can make direct payments through the split proposal QR code to the merchant (for example, when user 131a has taken a screenshot of the merchant QR code, no payment processing took place immediately). In some deployments, the merchant can directly provide a split proposal QR code to 131a-c users.
In some deployments, group mobile device payment may be deployed, instead of using QR codes, through the use of an alternative communication mechanism. For example, in some deployments, the POS terminal 133 may use a communication protocol, such as Bluetooth'", to communicate with users 131a-c. The POS terminal may, in series or in parallel, establish separate communication sessions with each of the users. Through separate communication sessions that POS terminal can transmit the product and/or merchant data required by the users' devices to generate individual purchase transaction processing requests. separate communications, the POS terminal can split the group proposal associated with users 131a-c into individual payment amounts.
Referring to Figure 1C, in some deployments, mobile device payment methods by snapping may be used for authentication/verification purposes, and to provide digital consent for disclosure of personal and/or private information. For example, a user 142 who visits his physician 143 may be required to provide informed consent to disclose personal information (eg, medical records) to the physician. The physician terminal can generate a QR code that incorporates the physician's digital certificate as well as information about the type/content of the user's medical records that are requested, eg 144. The user can photograph the QR code via of the user's mobile device. The user's mobile device can generate a request for release of records according to the OR code, and also serves as verification that the request is obtained from a personal trusted device (eg, the user's mobile device). In alternative deployments, the user may be able to select the personal information that the user would like to reveal to the healthcare provider, and the user's mobile device may generate a QR code for the physician's terminal to obtain a screenshot for retrieve the user's medical information. In some deployments, the QR code may also include payment information (for example, payment account information
: user, or physician acquirer information) along with information about controlled release of personal information.
In some deployments, SNAP can facilitate P2P transactions via pre-populated modifiable QR payment codes, e.g. 150. For example, a first user who has a public profile page, e.g. 151, can put an image of a QR code in the public profile, for example, 152. For example, the QR code can include a predetermined amount of payment for a purchase transaction initiated by capturing a screenshot of the OR code. In some deployments, the default amount may be $0 (for example, a QR payment code of $0). A second user can capture a screenshot of the QR payment code using a mobile device, and can set an amount that the second user would like to pay the first user via the second user's mobile device. The second user's mobile device can provide the information encoded within the QR code along with the payment amount chosen by the second user to a payment network for transaction processing.
It should be understood that the various aspects described in the present document of mobile payment for photography can be used for any controlled exchange of information and/or payment. For example, referring to Figure 1D, in some deployments, a user may obtain pay-per-view scheduling via mobile snap payment, for example, 160. For example, a television display may provide advertising including programming information, e.g. 162, as well as a QR payment code to obtain programming content, e.g. 161. The QR code may include information that identifies the programming information, as well as information that identify television subscriber account information, television machine address and/or the like. The user can take a screenshot of the QR code, and provide the information embedded in the QR code along with information for the user's mobile device (e.g. subscriber account number linked to the user's virtual wallet, account information payment, and/or similar). Upon processing the payment information by the payment network, the payment network may provide an indication to the television programming provider of payment completeness, and the television programming provider may transmit the programming content to the user's television. As another example, a similar stream can be used for in-flight entertainment, e.g. 170, where an in-flight screen can provide programming information 172 as well as a QR payment code 171 for the user to photograph for start of entertainment in flight. As another example, a poster, wall decoration, poster, store advertising, billboard, etc., e.g. 180, can
: Include an offer for a product/service, and a QR code including merchant information and product information that identifies a purchase amount and/or the like. The user can photograph the QR code with the user's mobile device linked to the user's virtual wallet to purchase the product and/or service, and, if applicable, the product can be sent directly to the user's address as specified by the purchase information exchanged with the payment network as part of the purchase request sent by the user's mobile device. As another example, newspapers, e.g. 185, may include offers, advertising, job offers and/or similar, including QR codes, e.g. 186, which embody the information — necessary for the user to initiate the purchase transaction. with the payment network. It should be understood that any aspects of the mobile device payment by snap deployment discussed in any of the deployments in this document and/or their equivalents may be used in any other deployments discussed in this document and/or their equivalents.
Referring to Figures 1E through F, in some deployments, the data required to process a purchase transaction may be provided through methods other than a QR code including, but not limited to: near field communications (NFC), Wi-FiTY, BluetoothTY, cellular network, SMS, email, text messaging and/or other communication protocols. For example, in some deployments, a user who consumes online via a web browser running on a client device, e.g. 190, may wish to pay for a purchase of items from an online consumer website, e.g. 191. The website may include a user interface element that the user can activate to initiate checkout and consumer payment. Upon user activation of the user element, the customer viewing the online consumer website may provide a message to a merchant server to initiate secure purchase transaction processing. The merchant's server operating the online consumer website may establish a secure connection (eg Secure Socket Layer Connection) to a paid network server of a payment network, for example 192. Also, the merchant's server paid network can establish a secure connection to the customer. For example, the customer may include a secure I/O chip that only allows secure connections to be established by the customer with the payment network's pay network servers. Through the secure connection, the paid web server can provide an instruction to the client to prompt the user to launch a virtual wallet mobile device application on the user's user device, see for example Figure 1F, 196. The The client may therefore provide a request to the user to launch a virtual wallet mobile device application on the user's device, e.g. 193, of the user. Upon the launch by the user of the application of
: Virtual wallet mobile device on the user's device, the user's device and the client can establish a secure connection with each other (e.g. via BluetoothTY, Wi-Fi, cellular, etc.) In some deployments, the client and user device can be pre-configured to quickly establish the secure communication channel with each other Through the secure communication channel, the customer can provide data to the user's mobile device, or vice versa, to facilitate the initiation of the purchase transaction. The virtual wallet application on the user's (or customer's) mobile device can then generate a purchase transaction initiation message and provide the same to the paid network server to process the purchase transaction. Upon completion of transaction processing, the paid web server can provide a payment completion notification to the customer, eg, Figure 1F, 197, or to the user device.
Figures 2A through F show application user interface diagrams illustrating exemplary attributes of a mobile device snap payment application that facilitates mobile device snap payment in some embodiments of SNAP. Referring to Figure 2A, in some deployments, a user may wish to complete the purchase of one or more items stored in a virtual shopping cart of an online merchant website. For example, the user may be using a browser application, eg 201, to view a merchant's website checkout page, eg 202. The checkout web page may depict order details for checkout, for example 203, and can provide one or more options for the user to provide payment for the purchase of store items. In some deployments, the checkout web page may include an option to pay for the purchase using a snap mobile device payment procedure, for example 204.
Referring to Figure 2B, in some deployments, upon selecting the option to use the snap mobile device payment procedure, the merchant's checkout web page, e.g. 206, may provide through the application of browser 205, a QR code, e.g. 209.2 including information about the items in the virtual shopping cart, as well as merchant information for the payment network to process the purchase transaction (e.g. a token/nickname and privacy linked to a merchant acquirer financial account). In some deployments, the web page can be viewed through a secure view from a user's trusted computing device. For example, as a security measure, the position of the QR code frame, e.g. 207, within the display can be randomly varied to prevent a screenshot of the QR code from being taken by fraudulent means (e.g. tampering of the trusted computing device). In some deployments, a security image, for example 208, pre-selected by the
Ú user can be displayed on the screen so that the user can check it as being accurate. In some deployments, the image may be encrypted by SNAP before providing it to the trusted computing device. In some deployments, the trusted computing device may be the only device to retain a decryption key required to successfully decrypt and display the image in the secure user view.
Referring to Figure 2C, in some deployments, such merchant product information that incorporates QR codes may be used by a point-of-sale (“POS”) terminal, for example, 210a-b. For example, in a physical store, the POS terminal may display an OR code, for example, 211a-b, which includes the payment purchase amount, for example, 212a-b, upon the user's indication that the user wants to complete a purchase of the items in the user's physical shopping cart. For example, the QR code can include data formatted according to Extensible Markup Language ("XML"), such as the example data structure below: <OR data> <order ID>4NFU4RG94</order ID> <timestamp> 2011-02-22 15 : 22 : 43</timestamp> <expiry lapse>00 : 00 : 30</expiry lapse> <transaction cost>$34.78</transaction cost> <user ID>john.q. public&agmail.com</user ID> <client details> <client 1P>192.168.23.126</client IP> <client type>smartphone</client type> <client model>HTC Hero</client model> <OS>Android 2.2 </0S> <app installed flag>true</app installed flag> </client details> | <secure element>www.merchant.com/securedyn/0394733/123.png</secure element tb <purchase details> <num. products>I</num products> <product> <product type>book</product type> <product params> <product title>XML for dummies</product title> <ISBN>938-2-14-168710-0< /ISBN> <edition>2nd ed. </edition> <cover>hardbound</ cover>
Ú <seller>bestbuybooks</seller> </product params> <quantity>|</quantity> </product> </purchase details> <merchant params> <merchant id>3FBCR4INC</merchant id> <merchant name>Books & Things, Inc. </merchant name> <merchant auth key>INNF484MCP59CHB27365</merchant auth key> </merchant params> <QOR data> Referring to Figure 2D, in some deployments, the user can get a screenshot of the QR code displayed on the secure display screen or at the POS terminal using a smart phone, e.g. 213. For example, the user's smart phone may have an application, e.g. 214, that runs on it to detect and capture password codes. QR, for example, 216a. For example, the user can use record attributes, eg 215, to align the QR code inside the smart phone display. The app may, in some deployments, provide the user with the ability to zoom in on the view, e.g. 217, or zoom out the view, e.g. 218, of the OR code to ensure that the QR code image fits within of the dimensions of the smart phone screen. By aligning the QR code within the smart phone display, the user may be able to take a screenshot of the QR code using a user interface element, for example,
219. The user can cancel the mobile device payment procedure by snap using a user interface element 220 on the smart phone display.
Referring to Figure 2E, in some deployments, upon taking a screenshot of the merchant's product QR code, the user's smart phone can extract the product and merchant data stored within the OR code, and use a account for the user's virtual wallet linked to the user's smart phone to generate a purchase transaction request to process by a payment network. Upon completion of payment transaction processing by the payment network using the information provided by the user's smart phone, merchant website 222 (via browser application 221) may provide a purchase receipt 225 to the user. Referring to Figure 2F, in deployments where the user uses the mobile device payment procedure via snap in a physical store, the POS terminal can display a purchase receipt to the user. In some deployments, the payment network may provide a receipt for
| 14/81 buyer directly to the user's smart phone.
Figures 3A through E show application user interface diagrams illustrating exemplary attributes of a mobile device snap payment application to capture product barcodes, secure user data, and prevent fraud in some SNAP embodiments. Referring to Figure 3A, in some deployments, the application running on the user's device may include an application interface that provides various attributes to the user. In some deployments, the app can be configured to recognize product identifiers (eg barcodes, QR codes, etc.), for example 301. For example, the app can be configured to capture product OR codes merchant for mobile device payment processing via snap, as discussed above with reference to Figures 2A through F. In some deployments, the user may be required to sign up for the application to enable its attributes. Once enabled, the camera can personally provide touch purchase attributes to the user. For example, the client device may have a camera through which the application can acquire images, video data, live video streaming and/or the like, eg 303. The application may be configured to analyze the data and search, for example, 301, for a product identifier, for example, 304, such as QR codes 209, 211a-b, 216a, and 227. In some deployments, the application may overlap crosshairs, target box and/or similar alignment reference markers, eg 305, so that a user can align the product identifier using the reference markers to facilitate product identifier recognition and interpretation. In some deployments, the application may include interface elements to allow the user to switch back and forth between product identification mode and product offering interface display screens (see, for example, 306), so so that a user can precisely study agreements available to the user before capturing a product identifier. In some deployments, the application may provide the user with the ability to view product identifier preview captures (see eg 307) so that the user may be able to better decide which product identifier the user wants to capture. In some deployments, the user may want to cancel the product purchase; the application can provide the user with a UI element (eg 308) to cancel the product identifier recognition procedure and return to the previous UI screen the user was using. In some deployments, the user may be provided with information about products, user definitions, merchants, offers, etc. in list form (see, for example, 309) so that the user can better understand the user's purchase options. Various other attributes can be provided in the application (see, for example,
| 15/81 and 310).
Referring to Figure 3B, in some deployments, the application may include an indication of the user's location (eg, merchant store name, geographic location, information about the aisle within the merchant store, etc.), e.g.
311. The application may provide an indication of a payment amount due for the purchase of the product, for example, 312. In some deployments, the application may provide various options for the user to pay the amount to purchase the product(s). For example, the application may use GPS coordinates to determine the merchant store within which the user is present, and direct the user to a merchant's website.
In some deployments, SNAP may directly provide an API to participating merchants to facilitate transaction processing. In some deployments, a SNAP order associated with the merchant's brand can be built with SNAP functionality, which can directly connect the user to the merchant's transaction processing system. For example, the user can choose from multiple cards (eg credit cards, debit cards, prepaid cards, etc.) from various card providers, for example 313. In some deployments, the application may provide the user the option to pay the purchase amount using financing included in a user's bank account, eg checking, savings, financial market, checking account, etc., eg 314. In some deployments, the user may have set default options for which card, bank account, etc. use for in-app purchase transaction. In some deployments, such a default options setting may allow the user to initiate the purchase transaction via a single click, screen tap, swipe, and/or other user input corrective action, eg 315a. In some deployments, when the user uses this option, the application may use the user's default settings to initiate the purchase transaction. In some deployments, the application may allow the user to use other accounts (eg, Checkout by Google""Y, PaypalTY account, etc.) to pay for the purchase transaction, for example, 316. In some deployments, the application may allow the user to use rewards points, airline miles, hotel points, e-coupons, printed coupons (e.g. by capturing the printed coupons similar to the product identifier), etc., to pay for the purchase transaction, e.g. , 317 to 318. In some deployments, the application may provide an option to provide express authorization before initiating the purchase transaction, for example, 319. In some deployments, the application may provide a progress indicator that provides an indication of progress of the transaction after the user has selected an option to initiate the purchase transaction, for example 320. In some deployments, the application may provide the user with h information. shopping history
: User's past through the application, e.g. 321. In some deployments, the application may provide the user with an option to share purchase information (e.g. via email, SMS, post update of profile on FacebookO, tweeting on Twitter"”, etc.) with other users and/or control information shared with the merchant, acquirer, payment network, etc., to process the purchase transaction, e.g. 322 In some deployments the application may provide the user with an option to display the product identification information captured by the customer device (for example, in order to show a consumer the representative service at the exit of a store the product information), for example, 324. In some deployments, the user, application, device, and/or SNAP may encounter an error in processing. In such scenarios, the user may be able to exchange messages with a representative to be customer service (eg VerifyChat 323) to resolve difficulties in the purchase transaction procedure.
In some deployments, the user may select to conduct the transaction with the use of an anonymized credit card number once, see, for example, 315b. For example, SNAP may use a pre-assigned anonymized definition of card details (see, for example, "AnonCardi", "AnonCard2"). As another example, SNAP can generate, for example, in real-time, a once-anonymized definition of card details to securely complete the purchase transaction (eg "Anon lt 1X"). In such deployments, the application may automatically define user profile settings so that any personally identifiable information about the user will not be provided to the merchant and/or other entities. In some deployments, the user may be required to enter a username and password to enable anonymization attributes.
Referring to Figure 3C, in some deployments, the UI elements of the Snap Mobile Payment Application can be advantageously arranged to provide the user with the ability to process a purchase with custom payment parameters with a minimum number of gestures. applied to the user's mobile device. For example, the user may be provided with an overloaded UI element, for example 325 to
326. For example, if the user has a payment QR code within the viewing angle of a camera included on the user's mobile device, the user can enable element 325 to photograph the QR code and use predetermined default settings to process the purchase based on the QR code. However, if the user wants to —customize the payment parameters, the user can activate the UI element 326 (eg press and hold). In doing so, the application may provide a pop-up menu, for example 327, which provides a variety of payment customization choices like those provided previously. The user can, for example, drag the user's finger to the appropriate settings that the user prefers, and release the user's finger from the touch screen of the user's mobile device to select the setting for payment processing. In alternative deployments, payment definition options, e.g. 330, and QR capture activation buttons, e.g. 328a ab (e.g. 328b may provide even more definitions than those displayed on the splash screen), can be included in the user interface along with a window, eg 329, to capture the QR code via the mobile device's camera. In alternative deployments, the user's mobile device can generate a graph of payment hybrid OR code definitions, and the POS terminal (or user's trusted computing device) can capture the entire graph for payment processing. Referring to Figure 3D, in some deployments, a user may be advantageously able to provide user definitions on a device that produces a —QR code for a purchase transaction, and then capture the QR code using the mobile device of the user. For example, a display device of a point of sale terminal may display a checkout screen, such as a web browser running on a customer, e.g. 331, display a checkout web page from a online consumer website, eg 332. In some deployments, screen checkout may provide a user interface element, eg 333a ab, through which the user can indicate a desire to utilize mobile payment via snap . For example, if the user activates the 331a element, the website can generate a QR code using standard user definitions, and display the QR code, for example 335, on the client's screen for the user to capture with the use of user's mobile device In some deployments, the user may be able to activate a user interface element, e.g. 333b, through which the customer can display a pop-up menu, e.g. 334, with additional options from from which the user can select. For example, the website may provide user selection options similar to those discussed above in the description with reference to Figures 3B through C. In some deployments, the website may modify the QR code 335 in real-time as the user modifies provided settings upon activation. the 333b user interface element. Once the user has modified the settings using the pop-up menu, the user can capture a screenshot of the QR code to start the purchase transaction processing.
Referring to Figure 3E, in some deployments, SNAP can provide the user with a user interface to modify mobile device payment settings by user snap. For example, SNAP can provide an interface to the
] web, eg 341. For example, the user may be able to modify security settings of the user's virtual wallet, eg 342, using the web interface.
For example, the user can review a list of trusted devices, eg 344, through which the user can access the user's virtual wallet. In some deployments, the web interface may provide a user interface element to add a trusted device, eg 343. The web interface may also provide the user with optional security options. For example, the user may be able to define a security passphrase, e.g. 345, modify settings for when the user must be prompted before authorizing a purchase transaction, e.g. 346, the presentation type/style of security attributes, eg 347, and a security image to be displayed on the terminal used in mobile payment via snap, eg 348. In various deployments, the user may be able to access other services including modifying user profiles , accounts, account preferences, add cards, get offers and coupons, locate ATMs, etc.
Figures 4A to D show data flowcharts illustrating an exemplary mobile device snap payment procedure in some embodiments of SNAP. Referring to Figure 4A, in some deployments, a user, e.g., 401, may wish to purchase a product, service, offering, and/or the like ("product"), from a merchant, e.g., 403, through a merchant's online website or at the merchant's store, User may communicate with a merchant's server, e.g. 403, through a client such as, but not limited to: a personal computer, mobile device, television, point of sale terminal, kiosk, ATM, and/or similar (eg 402). For example, the user can provide user input, for example, checkout by input 411, in the customer indicating the user's desire to purchase the product. For example, a user at a merchant store can scan a product's product barcode via a barcode scanner at a point of sale terminal. As another example, the user can select a product from a web page catalog on the merchant's website, and add the product to a virtual shopping cart on the merchant's website. The user can then indicate the user's — desire to complete the purchase of items in the (virtual) shopping cart. The customer can generate a checkout request, for example, 412, and provide the checkout request, for example, 413, to the merchant server. For example, the customer may provide a Hypertext Transfer Protocol (Secure) ("HTTP(S)") GET message including the product details to the merchant server in the form of data formatted in accordance with the Extensible Markup Language ("XML"). Below is an example of an HTTP(S) GET message including an XML-formatted checkout request to the merchant server: GET /checkout.php HTTP/1.1 Host: www.merchant.com Content-Type: Application/ XML Content-Length: 718 < XML version = "1.0" encoding = "UTF-8" 2> <checkout request> <session ID>4NFU4RG94</session ID> <timestamp>2011-02-22 15 : 22 : 43</timestamp> <user ID>john.q.publicQ&gmail.com</user ID> <client details> <client 1P>192.168.23.126</client IP> <client type>smartphone</client type> <client model >HTC Hero</client model> <OS>Android 2.2</0S> <app installed flag>true</app installed flag> </client details> <purchase details> <num. products>I</num products> <product> <product type>book</product type> <product params> <product title>XML for dummies</product title> <ISBN>938-2-14-168710-0< /ISBN> <edition>2nd ed. </edition> <cover>hardbound</ cover> <seller>bestbuybooks</seller> </product params> <quantity>I</quantity> </product> </purchase details> </checkout request> In some deployments , the merchant server can get the checkout request from the customer, and extract the checkout by details (eg XML data) from the checkout request.
For example, the merchant server may use a parser such as the example parsers described below in the discussion with reference to Figure 14. The merchant server may extract the
| 20/81 i product data, as well as customer data from the checkout request.
In some deployments, the merchant server may query, for example, 414, a merchant database, for example, 404, for product data, for example, 415, such as product pricing, sales rates, offers, discounts, rewards, and/or other information to process the purchase transaction.
For example, the database might be a relational database responsive to Structured Query Language (“SQL”) commands. The merchant server can run a hypertext preprocessor ("PHP") script including SQL commands to query the database for product data.
An example PHP/SQL command listing, which illustrates substantive aspects of database querying, is provided below: < PHP header('Content-Type: text/plain'); mysql connect("254.93.179.112", SDBserver, Spassword); //access database server mysql select db ("(PRODUCTS.SQL"); //select database table to search llcreate query $query = "SELECT product info product price tax lympho list offers list discounts list rewards list FROM ProdTable WHERE product LIKE ' %' $prod"; $result = mysql query ($query); //perform the search query mysql close "PRODUCTS.SQL"); //close database access > In some deployments, in response to getting product data, the merchant server may generate, for example, 416a, a payment QR code, and/or secure display element, as per the definitions user security (see, for example, 358). The merchant server can provide the QR code to the customer, so that the customer can display the QR code and the user can capture the QR code using the user's device to obtain business and/or product data to generate a request of purchase transaction processing.
In alternative deployments, the merchant server may direct the customer to communicate the product and/or commercial data required to process the transaction to the user's device — via an alternative communication protocol such as, but not limited to: Fi“, Bluetooth“”, cellular network, SMS, e-mail and/or similar communication protocols.
For example, the merchant server may direct the customer to launch a plug-in on their system to provide the alternative communication service and transmit the product and/or commercial data to the user's device via the alternative communication service.
In deployments that use an OR code, the merchant server can generate an OR code that incorporates product information as well as
| l 21/81 required by a payment network to process the purchase transaction.
In some deployments, the QR code may include at least information required by the user device capturing the QR code to generate a purchase transaction processing request, such as a merchant filter (e.g. a merchant Dnumber, merchant name , store ID, etc.) and a session identifier for a user consuming session associated with the consuming website/physical store.
In some deployments, the merchant server can generate in real-time, a custom user-specific merchant product XML data structure that has a limited time validity period, such as the sample 'QR data' XML data structure provided below : <OR data> <order ID>4NFU4RG94</order ID> <timestamp>2011-02-22 15:22:43</timestamp> <expiry lapse>00:00:30</expiry lapse> <transaction cost> $34.78</transaction cost> <alerts URL>www.merchant.com/shopcarts. php sessionID=AEBB4356</alerts URL> <user ID>john.q.publicSgmail.com</user ID> <client details> <client I1P>192.168.23.126</client |IP> <client type>smartphone</ client type> <client model>HTC Hero</client model> <OS>Android 2.2</0S> <app installed flag>true</app installed flag> </client details> <secure element>www.merchant.com/ securedyn/0394733/123.png</secure element> <purchase details> <num products>I</num products> <product> <product type>book</product type> <product params> <product title>XML for dummies </product title> <ISBN>938-2-14-168710-0</ISBN> <edition>2nd ed. </edition> <cover>hardbound</ cover> <seller>bestbuybooks</seller>
</product params> <quantity>K/quantity> </product> </purchase details> <merchant params> <merchant id>3FBCR4INC</merchant id> <merchant name>Books & Things, Inc. </merchant name> <merchant auth key>INNF484MCP59CHB27365</merchant. auth key> </merchant params> <OR data> In some deployments, the XML data may include a handle, alias, token, or pointer to information stored on a payment network server, rather than encoding all the actual data required to initiate the transaction so that the information encoded in the QR code can be advantageously minimized.
In some deployments, the merchant can generate a QR code using XML data.
For example, merchant server can use PHP QR code open source (LGPL) library to generate QR code, two-dimensional barcode, available at http://phpgrcode.sourceforge.net/. For example, the merchant server can launch PHP commands similar to the example commands given below: < PHP À header ('Content-Type: text/plain ') ; 1/ Create QR code image using data stored in $data variable QRcode::png ( $data, 'qgrcodeimg. png' ); > In alternative deployments, the merchant server can provide eg 416b XML data to a payment network server eg 406 along with a Request to generate a QR code.
For example, the merchant server can use an API call to the payment network server to request the generation of the QR code.
The payment network server can generate the QR code for the merchant server, for example 416c, and provide, for example, 4i6d, the QR code to the merchant server.
For example, the payment network server can encode the information provided by the merchant in the QR code, and it can also advantageously encode the security information, time validity information, digital certificate information, anonymous submission information, tariff information of OR code generation/processing, etc. in the OR code.
In some deployments, the payment network server may provide the merchant server with an encryption key (eg, a Rivest-Shamir-Adleman ("RSA") private/public key, digital certificate). The merchant can encrypt the custom user-specific merchant-product XML data structure using the encryption key to generate encrypted purchase data (for example, using the RSA algorithm). The merchant server can then encode the encrypted data into the QR code.
Such a scheme may be advantageously employed, in various embodiments, by the payment network server to authenticate the merchant for any transaction processing requests related to the user-merchant consumption session.
In some deployments, pre-engineered QR codes associated with authenticated with pre-authenticated merchants can be provided to the user's device.
For example, a user can browse an online website on the user's device.
The user device can create an HTTP(S) GET request for a web page from a web server.
In some deployments, the web server may, in response to the user's device request for a web page, generate a — query for advertisements to be displayed on the web page.
For example, the web server may fetch a database, or provide a request to an Advertising network server (eg Akamai) to provide advertisements for embedding on the web page.
In some deployments, the ad network server may use keywords, metadata, etc. obtained from the web server (e.g. keywords or metadata associated with the web page, user profile information, user ID, user browsing history from a cookie stored on the user's device, etc.). The ad network may use the keywords to generate a database query(s) for advertisements associated with the keywords and may obtain advertisements to serve.
In some deployments, the ad network server may provide information (e.g. via an API call) in such advertisements (e.g. merchant name, merchant ID, product name, product pricing information, offers related, etc.) to a payment network server.
The payment network server may generate a QR code based on information provided by the advertising network server, so that a user device can photograph the OR code to initiate a purchase transaction for the goods and/or services associated with the payment network. QR code (for example, as provided by the ad network server to the payment network server). The ad network server can deliver the QR as part of the ad to the web server, which can in turn embed the ad that includes the QR code on the web page before providing it to the user's device.
In alternative deployments, the ad network server/web server can pass a URL or other QR code identifier (last) to the user device and the user device can make a call (e.g. an HTTP(S) GET request) using the QR code URL (eg hosted on the payment network server) to get the QR code and display it to the user.
In some deployments, the merchant server may provide the customer with the QR code, for example, 417. For example, the merchant server may provide a HyperText Markup Language ("HTML") page that includes a reference to the image of QR code and/or hold element image, such as the sample HTML page below: <html> <img Sre="www.merchant.com/ securedyn/ 0394733/grcodeimg.png" —alt="Merchant- Product QR code "/> <img src=" www.merchant.com/securedyn/0394733/123.png" alt="Secure Element"/> </html> | In some deployments, the customer can obtain the payment QR code, eg 417, and display the QR code, eg 418 on a display screen associated with the customer device.
In some deployments, the user can use a user device, for example, 405, to capture the QR code presented by the customer device for payment processing.
For example, the user can provide payment input to the user's device, e.g. 419. In many deployments, user input may include, but is not limited to: a single tap (e.g. a mobile app purchase modality a touch interface, keypad entry, card access, which activates an RFID/NFC enabled hardware device (e.g., electronic card that has multiple accounts, smartphone-type phone, smartphone device-type device, tablet-like, etc.) within the user device, mouse clicks, depression buttons on a control/game console, voice commands, single/multi-touch gesture on a touch interface, which touch interface elements user on a touchscreen display, and/or the like.
For example, the user device may obtain track 1 data from the user's card (e.g., credit card, debit card, prepaid card, charge card, etc.), such as sample track 1 data. provided below: %B12345 67 89012345>PUBLIC/J.
Q. <[Lambda]> 9901 12000000000000000 * * 901 trAAAADA (where ' 12345 67 89012345 ' is the card number of V.Q.
Public' and has a CVV number of 901. '9 90112' is a service code and *** represents decimal digits —which change randomly each time the card is used) In some deployment, the user's device can determine whether an image that captured it depicts a QR code.
Depending on whether or not a QR code has been captured and also (optionally) depending on the content of the QR code, the user device may redirect the user (e.g. via a web browsing application running on the user device) to : a product, a merchant website, a product on a merchant website, a website and which includes a command to add an item to a user's purchase card associated with the website, and/or similar.
For example, the user device may execute a component such as the sample rapid response code processing ("(QRCP") 600 component described below in the discussion with reference to Figures GA through B.
In some deployments, upon obtaining the user payment entry and captured OR code, the user device may generate a 420 card authorization request (e.g., if the QR code includes a purchase coupon, offer, billing, personal payment of another virtual wallet virtual wallet user, etc.), to provide to the payment network server.
For example, the user device may provide a card authorization request, e.g. 421, on behalf of the user, an HTTP(S) GET message that includes the product order details to a payment network server, for example, 406, in the form of XML-formatted data.
Below is an example HTTP(S) GET message that includes an XML-formatted Card Authorization Request to the payment network server: GET /purchase.php HTTP/ 1.1 Host: www.merchant.com Content-Type: Application /XML Content Length: 1306 < XML version = "1.0" encoding = "UTF-8"2> <purchase order> <order ID>4NFU4RG94</order.
ID> <alerts URL>www.merchant.com/shopcarts.php sessionl/D=AEBB4356</alerts URL> <timestamp>2011-02-22 15 : 22 : 43</timestamp> <user ID>john.q .publicSgmail. com</user 1D> <client details> <client 1P>192.168.23.126</client IP> <client type>smartphone</client type> <client model>HTC Hero</client model> <OS>Android 2.2</ 0S> <app installed flag>true</app installed flag> </client details> <purchase details> <num products>|</num products> <product>
<product type>book</product type> | <product params> <product title>XML for dummies</product title> <ISBN>938-2-14-168710-0</ISBN> <edition>2nd ed. </edition> <cover>hardbound</ cover> <seller>bestbuybooks</seller> </product params> <quantity>K/quantity> </product> </purchase details> <merchant params> <merchant id>3FBCR4INC </merchant id> <merchant name>Books & Things, Inc. </merchant name> <merchant. auth key>INNF484MCP59CHB27365</merchant. auth key> </merchant params> <account params> <account name>John Q.
Public</account name> <account type>credit</account type> <account num>123456789012345</account num> <billing. address>123 Green St., Norman, OK 98765</billing address> <phone>123-456-7809</phone> <sign>/j qp/</sign> <confirm type>email</confirm type> < contact info>john.q.publicSgmail. com</contact info> </account params> <shipping info> <shipping. address>same as billing</shipping. address> <ship type>expedited</ship type> <ship carrier>redEx</ship carrier> <ship account>123-45-678</ ship. account> <tracking. flag>true</tracking. flag> <sign flag>false</sign flag> </ shipping. info> </purchase order> In some deployments, the card authorization request generated by the user's device may include a minimum of information required to process the purchase transaction. For example, this can improve efficiency in communicating the purchase transaction request and can also advantageously improve the privacy protections provided to the user and/or merchant. For example, in some deployments, the card authorization request may include at least a merchant ID, a session ID for the user's purchase session with the merchant, and a device ID for a device (e.g., smartphone type) of the user that is linked to the user's virtual wallet. In some deployments, messages and QR code sent to/from QR code capture device may include Source ID (e.g. identifier of device generating QR code), Session ID, Merchant ID, Item ID ( e.g. model number), the amount of charge, and/or device transaction ID (e.g. the user's smartphone-type phone device).
In some deployments, the card authorization request may be provided by the merchant server or point of sale terminal, rather than the user device. In some deployments, the user, desiring security, may request, via the user device, the payment network server for a dynamically generated card verification value (dCVVTY) code to be used alongside the primary account number of the user ("PAN," for example, credit card number) in the purchase transaction. In response, the payment network server can generate a dCVVTY code (e.g. using random number generation, MDS hash of an input key, which can be generated using user ID, merchant ID, session ID, timestamp, combinations thereof, and/or the like) and provide a session-specific dCVV'" code for the user to use in addition to the user's PAN number. For example, the session-specific dCVV'TY code session may have an expiration time (eg expire in one minute from then). User device can communicate (eg via Bluetooth!Y, NFC, Wi-Fi, cellular, OR code, etc.) .) the PAN and dCVV to the point of sale terminal, which can create the card authorization request. For example, the user device can generate a payment QR code that incorporates the PAN and dCWV numbers and the point of sale terminal can photograph an image of the QR payment code generated by user device. terminal can then generate and provide the card authorization request to the payment network server. The payment network server can then validate the transaction by comparing the dCWVV obtained from the merchant with the dCVV that the merchant provided to the user device before the purchase transaction was initiated. If the dCVV codes from the two sources (payment network server and merchant) properly match each other, the payment network server can continue to process the purchase transaction.
In some deployments, a user device's card authorization request may include encrypted data extracted from the QR code, which may have been encrypted by the merchant server as part of a merchant authentication scheme. In some deployments, the payment network server may obtain the encrypted data from the card authorization request provided by the user device and performed to decrypt the encrypted data, for example using a private/public RSA that is complementary to the key that the payment network server initially provided to the merchant server to encrypt the purchase data before embedding it in the QR code. If the payment network server has the ability to decrypt the purchase data, then the merchant is authenticated as a valid merchant. In some deployments, the payment network server may compare the decrypted purchase data from the card authorization with data provided by the user/user device to determine if the data from these different sources (user/user device and merchant) properly match each other. Thus, in some deployments, the payment network server can authenticate the merchant and correlate the merchant to a specific user session or user device before processing the transaction.
In some deployments, the payment network server may provide notification to the user device that the transaction is authenticated and approved for transaction. In alternative deployments, the payment network server can handle transaction processing. In some deployments, upon identification that the user is in a session with the merchant, the payment network server may communicate with the user's device to provide additional features to the user. For example, in some deployments, the payment network server may provide communication to the user's device (eg, via an HTTP(S) POST message) to provide: a virtual merchant storefront; a description of a merchant aisle associated with the products included in the card authorization request, a listing of related items; and/or the like (see, for example, Figure 7E-G and description below for additional embodiments).
Referring to Figure 4B, in some implementations, the payment network server may process the transaction in order to transfer funds for the purchase in a stored account to a merchant acquirer. For example, the acquirer might be a financial institution that maintains a merchant account. For example, transaction procedures processed by the merchant may be deposited into an account held on an acquirer's server.
In some deployments, the payment network server may generate a query, eg 422, for the issuing server(s) that match the payment options selected by the user.
For example, the user's account may be linked to one or more issuing financial institutions ("issuers"), such as banking institutions, that issued the account(s) to the user.
For example, such accounts may include, but are not limited to: credit card, debit card, prepaid card, checking, savings, money market, certificates of deposit, stored value (cash) accounts and/or the like.
The issuer server(s), eg 408a-n, of the issuer(s) may maintain user account details.
In some deployments, a database, for example a 407 payment network database, may store details of the issuer server(s) associated with the issuer(s). For example, the database might be a relational database in response to Structured Query Language ("SQL") commands. The payment network server may query the payment network database for details of issuer server(s). For example, the payment network server may run a hypertext preprocessor ("PHP") script that includes SQL commands to query the database for details of the issuing server(s) . An example PHP/SQL command that lists, illustrates the substantive aspects of querying the database, is provided below: < PHP header('Content-Type: text/plain'); mysql connect("254.93.179.112", SDBserver, $password) ; // access database server mysql select db ("ISSUERS.
SQL") ; // select database table to search llcreate query for issuer server data $query = "SELECT issuer name issuer address issuer jd ip address mac address auth key port num security settings list FROM IssuerTable WHERE account num LIKE'% $accountnum" ; $result = mysql query ( $query); // perform the search query mysql close (" ISSUERS.
SQL") ; // close database access > In response to getting the issuer server query, e.g. 422, the payment network database may provide, e.g. 423, the sender server data requested from the payment network server.
In some deployments, the payment network server may use issuer server data to generate authorization request(s), e.g. 424, for each of the selected issuer server(s) ) based on pre-defined payment settings associated with the user's virtual wallet, and/or the user's payment options input and provide the card(s) authorization request, e.g. 425a-n, to the user(s) ) issuing server(s), e.g. 408a-nº In some deployments, the
authorization request(s) may include details such as, but not limited to: the costs to the user involved in the transaction, user card account details, user invoice and/or shipping information, and/or the like .
For example, the payment network server might provide an HTTP(S) POST message that includes an XML-formatted authorization request similar to the sample listing provided below: POST /authorization.php HTTP/1.1 Host: www.issuer.com Type of issue Content: Application/XML Content Length: 624 | < XML version = "1.0" encoding = "UTF-8"2> <card query. request> <query ID>VNEI39FK</query ID> <timestamp>2011-02-22 15 : 22 : 44</timestamp> <purchase summary> | <num. products>|</num products> | <product> <product summary>Book - XML for dummies</product summary> <product. quantity>K/product quantity </product> </purchase summary> <transaction. cost>$22.61</transaction cost> <account params> <account type>checking</account type> <account num>1234567890123456</account num> </account params> <merchant params> <merchant id>3FBCR4INC</merchant id > <merchant name>Books & Things, Inc. </merchant name> <merchant auth key>INNF484MCP59CHB27365</merchant auth key> </merchant params> </card query request> In some deployments, an issuing server may parse the( s) authorization request(s) and based on the request details, may query a database, eg user profile database 409a-n, for data associated with an account linked to the user.
For example, the sender server can issue PHP/SQL commands similar to the example given below: < PHP header (' Content-Type : text/plain); mysql connect("254.93.179.112", SDBserver, $password) ; // access database server mysql. select db("USERS.SQL" ); // select database table to search /lcreate query for user data $query = "SELECT user id user name user balance account type FROM UserTable WHERE account num LIKE '%' $accountnum” ; $result = mysql. query ( $query) ; // perform the search query mysql close( "USERS. SQL" ); // close database access
WD In some deployments, by obtaining user data, eg 427a-n, the issuing server can determine whether the user can pay for the transaction using available funds in the account, eg 428a-n. For example, the issuing server can determine whether the user has sufficient balance remaining in the account, sufficient credit associated with the account, and/or the like. Based on the determination, the issuing server(s) —may provide an authorization response, eg 429a-n, to the payment network server. For example, the sender server(s) may provide an HTTP(S) POST message similar to the examples above. In some deployments, if at least one issuing server determines that the user cannot pay for the transaction using available funds in the account, see e.g. 430 to 431, the payment network server may request payment options again from the user device (for example, providing a 431 authorization failure message to the user device and asking the user device to provide new payment options) and retrying authorization for the purchase transaction. In some deployments, if the number of failed authorization attempts exceeds a threshold, the payment network server may abort the authorization process and provide an “authorization failure” message to the merchant server, user device, and/or client. .
Referring to Figure 4C, in some deployments, the payment network server may get the authorization message including a successful authorization notification, see for example 430, 433 and parse the message to extract authorization details. Upon determination that the user has sufficient funds for the transaction, the payment network server may generate a transaction data record, e.g. 432, of the authorization request and/or authorization response and store the transaction details and transaction-related authorization in a transaction database. For example, the payment network server can issue PHP/SQL commands similar to the example listing below to store transaction data in a database: < PHP header (' Content-Type : text/plain ) ;
mysql connect( "254.92.185.103", SDBserver, $password) ; // access database server mysql. select("TRANSACTIONS.SQL" ); // select database to append mysql query (" INSERT INTO PurchasesTable (timestamp, purchase summary list, num products, product summary, product quantity, transaction cost, account params list, account name, account type, account num, billing addres, zipcode, phone, sign, merchant params list merchant id, merchant name, merchant auth key) VALUES (time(), purchase summary list, $num products, Sproduct summary, $product quantity, Stransaction cost, Saccount params list “Saccount name, S$ account type, Saccount num, Sbilling addres, S$zipcode, $phone, $sign, $merchant params list, $merchant id, gmerchant name, $gmerchant auth key )"); // add data to table in database mysql close("TRANSACTIONS. SQL" ); // close connection to database > In some deployments, the payment network server may proceed with an authorization success message, eg 433a-b, to the user device and/or merchant server. The merchant can obtain the authorization message and determine from it that the user has sufficient funds in the card account to conduct the transaction. The merchant server can add a transaction record for the user to a batch of transaction data related to authorized transactions. For example, the merchant can append the XML data that pertains to the user transaction to the data XML file comprising XML data for transactions that have been authorized for multiple users, e.g. 434, and store the data XML file, e.g. 435 , in a database, e.g. merchant database
404. For example, a batch data XML file might be structured similar to the example XML data structure given below: < XML version = "1.0" encoding = "UTF-8" 7> <merchant data> <merchant id>3FBCR4INC</merchant jd> <merchant name>Books & Things, Inc. </merchant name> <merchant auth key>INNF484MCP59CHB27365</merchant auth key> <account number>123456789</account number> </merchant data> <transaction data> <transaction 1> </transaction 1>
<transaction 2> </transaction 2>
R <transaction n> </transaction n> </transaction data> In some deployments, the server can also generate a purchase receipt, eg 434 and provide the purchase receipt to the customer eg 436. The customer can render and display, for example, 437a, the purchase receipt to the user. In some deployments, the user device 405 may also provide a successful authorization notification to the user, for example, 437b. For example, the client/user device may render a web page, electronic message, text/SMS message, temporarily store a voicemail, issue a ringtone, and/or play an audio message, etc. and provide outputs that include, but are not limited to: sounds, music, audio, video, images, haptic feedback, vibration alerts (e.g. on customer devices with vibration capability such as a smartphone-type phone, etc.), and/or similar.
Referring to Figure 4D, in some deployments, the merchant server may initiate release of a batch of authorized transactions. For example, the merchant server can generate batch data request, for example, 438, and provide the request, for example, 439, to a database, for example, merchant database 404. For example, the server merchant can use PHP/SQL commands similar to the examples provided above to query a relational database. In response to the batch data request, the database can provide the requested batch data, eg 440. The server can generate a batch release request, eg 441, using the obtained batch data from the database and provide, for example, 442, the batch release request to an acquirer server, for example, 410. For example, the merchant server may provide an HTTP(S) POST message that includes Formatted Batch Data in XML in the message body to the acquiring server. The acquiring server can generate, for example, 443, a batch payment request using the obtained batch release request, and provide the batch payment request to the payment network server, for example, 444. The network server payment request can parse the batch payment request and extract transaction data for each transaction stored in the batch payment request, for example 445. The payment network server can store the transaction data, for example 446, for each transaction in a database, for example, payment network database 407. For each transaction extracted, the payment network server can query, for example, 447 to 448, a database, for example, payment network database 407, to an address of an issuing server.
For example, the payment network server can use PHP/SQL commands similar to the examples given above.
The payment network server can generate an individual payment request, e.g. 449, for each transaction for which it has extracted transaction data, and provide the individual payment request, e.g. 450, to the issuing server, e.g. 408. For example, the payment network server might provide an HTTP(S) POST request similar to the example below: POST /requestpay.php HTTP/1.1 Host: www.issuer.com Content-Type: Application/XML Length of content: 788 < XML version = "1.0" encoding = "UTF-8" > <pay request> <request ID>CNI41CNW2</request ID> <timestamp>2011-02-22 17 : 00 : O1</timestamp > <pay, amount>$34.78</pay amount> <account params> <account name>John Q.
Public</account name> <account type>credit</account type> <account num>123456789012345</account num> <billing address>123 Green St., Norman, OK 98765</billing address> <phone>123-456 -7809</phone> <sign>/j qp/</sign> </account params> <merchant params> <merchant id>3FBCR4INC</merchant id> <merchant name>Books & Things, Inc. </merchant name > <merchant auth key>INNF484MCP59CHB27365</merchant auth key> </merchant params> <purchase summary> <num products>I|</num products>
<product> <product summary>Book - XML for dummies</product summary> <product quantity>K/product quantity </product> </purchase summary> </pay request> In some deployments, the issuing server may generate a payment command, eg 451. For example, the issuing server may issue a command to deduct funds from the user's account (or add a charge to the user's credit card account). The sender server may issue a payment command, eg 452, to a database that stores the user's account information, eg, user profile database 409. The sender server may provide a transfer message e.g. 453, to the payment network server, which may proceed, e.g. 454, the funds transfer message to the acquiring server.
An example HTTP(S) POST funds transfer message is provided below: POST/clearance.php HTTP/1.1 | Host: www.acquirer.com Content-Type: Application/XML Content-Length: 206 < XML version = "1.0" encoding = "UTF-8"2> <deposit ack> <request ID>CNI4ICNW2</request ID> <clear flag>true</clear flag> <timestamp>2011-02-22 17 : 00 : 02</timestamp> <deposit amount>$34.78</deposit amount> </deposit ack> In some deployments, the acquiring server may parse the funds transfer message and correlate the transaction (eg using the request ID field in the example above) to the merchant.
The acquiring server can then transfer the funds specified in the funds transfer message to a merchant account, e.g. 455. Figures 5A to 5E show logic flow diagrams illustrating illustrative aspects of executing a snap mobile payment on some SNAP modalities, for example, a Mobile Snap Payment Execution component (“*SMPE”) 500. Referring to Figure SA, in some deployments, a user may wish to purchase a product, service, offering, and the like (" product"), from a merchant via an online merchant website or in the merchant's store. The user can communicate with a merchant server through a client. For example, the user can provide user input, eg 501, to the customer that indicates the user's desire to complete consumable items on a (virtual) shopping card. The client can generate a termination request, for example 502, and provide the termination request to the merchant server. The merchant server can get the checkout request from the client and extract the checkout details (e.g. XML data) from the checkout request, for example 503. For example, the merchant server can use a parser such as parsers examples described below in the discussion with reference to Figure 14. The merchant server can extract the product data as well as the customer data from the completion request. In some deployments, the merchant server may query, for example, 504, a merchant database for product data, for example, 505, such as product prices, sales rate, offers, discounts, rewards, and /or other information to process the purchase transaction.
In response to obtaining product data, the merchant server may generate, for example, 506, a payment QR code, and/or secure display element in accordance with the user's security settings (see, for example, 358 ). For example, the merchant server can generate a QR code that incorporates product information as well as commercial information required by a payment network to process the purchase transaction. For example, the merchant server may first generate in real-time, a custom user-specific merchant product XML data structure that has a limited validity period, such as the sampler XML data structure “QR data' provided below: <QR data> <session ID>4NFU4RG94</session ID> <timestamp>2011-02-22 15 : 22 : 43</timestamp> <expiry lapse>00 : 00 : 30</expiry lapse> <transaction. cost>$34.78</transaction cost> <user ID>john. q. publicSgmail. com</user ID> <client details> <client 1P>192.168.23.126</client IP> <client type>smartphone</client type> <client model>HTC Hero</client model> <OS>Android 2.2</ OS> <app. installed flag>true</app installed flag> </client details>
<secure element>www.comerciante.com/securedyn/0394733/123.png</secure element> <purchase details> <num products>K/num products> <product> <product type>book</product type> < product params> <product title>XML for dummies</product title> <ISBN>938-2-14-168710-0</ISBN> <edition>2nd ed. </edition> <cover>hardbound</ cover> <seller>bestbuybooks</seller> </product params> <quantity>K/quantity> | </product> | </purchase details> <merchant params> <merchant id>3FBCR4INC</merchant id> <merchant name>Books & Things, Inc. </merchant name> <merchant auth key>INNF484MCP59CHB27365</merchant auth key> </merchant params > <QR data> In some deployments, the merchant can generate QR code using XML data. For example, merchant server can use PHP QR code open source (LGPL) library to generate QR code, two-dimensional barcode, available at http://phpgrcode.sourceforge.net/. For example, the merchant server can issue PHP commands similar to the example commands given below: < PHP header (' Content-Type : text/plain'); 1/ Create QR code image using data stored in $data variable QRcode::png ( $data, 'grcodeimg. png' );
WD The merchant server can provide the customer with the payment QR code, eg 506. The customer can obtain the payment QR code and display the QR code, eg 507 on a display screen associated with the customer device. In some deployments, the user can use a user device, for example 509, to capture the QR code presented by the customer device for payment processing. The client device can decode the QR code to extract the information embedded in the QR code. For example, the client device may use an application such as the ZXing multi-format 1D/2D barcode image processing library, 1 available at http://code.google.eom/p/zxing/ to extract QR code information. In some deployments, the user may provide payment input on the user's device, eg 508. Upon obtaining the user's purchase input, the user's device may generate a card authorization request eg 509 and provide the card authorization request to a payment network server.
Referring to Figure 5B, in some deployments, the payment network server may parse the card authorization request, e.g. 510, and generate a query, e.g. 511, to the issuing server(s)( es) corresponding to the payment options selected by the user. In some deployments, a payment network database may store details of the issuer server(s) associated with the issuer(s). In response to obtaining the issuer server query, the payment network database may provide, for example, 512, the requested issuer server data to the payment network server. In some deployments, the payment network server may use the sender server donor to generate authorization request(s), e.g. 425134, for each sender server(s) and provide the ) card authorization request(s) to the issuing server(s).
In some deployments, an issuing server may analyze the authorization request(s) and based on the request details, may query a user profile database for the data associated with an account linked to the user. In some deployments, upon obtaining user data, the issuing server can determine whether the user can pay for the transaction using funds available in the account, for example,
517. For example, the issuing server can determine whether the user has sufficient balance remaining in the account, sufficient credit associated with the account, and/or the like. Based on the determination, the issuing server(s) may provide an authorization response, eg 518, to the payment network server. In some deployments, if at least one issuing server determines, e.g. 519, that the user cannot pay for the transaction using available funds in the account, see e.g. 520, option "No" the network server payment option may request payment options again from the user (see, for example, 521, the “no” option, providing an authorization failure message to the user device and asking the user device to provide new payment options) and trying authorization again for the purchase transaction. In some deployments, if the number of failed authorization attempts exceeds a threshold, see for example 521, the “yes” option, the payment network server may abort the authorization process and provide an “authorization failed” message. ” to the merchant server, user device and/or client, eg 522. | In some deployments, the payment network server can get the authorization message including a successful authorization notification, see for example 520, the “yes” option, and parse the message to extract authorization details. Upon determination that the user has sufficient funds for the transaction, the payment network server may generate a transaction data record, e.g. 523, of the authorization request and/or authorization response and store, e.g. 524, transaction and transaction-related authorization details in a transaction database.
Referring to Figure 5C, in some deployments, the payment network server may proceed an authorization success message, e.g. 525, to the user device and/or merchant server, sometimes through the acquiring server, eg 526. The merchant can review the authorization message eg 528 and determine from it that the user has sufficient funds in the card account to conduct the transaction, see eg 529. The merchant server can add a transaction record for the user to a batch of transaction data related to authorized transactions, see for example 530-
531.In some deployments, the merchant server can also generate a purchase receipt, for example, 532, and provide the purchase receipt to the customer. The customer can render and display, for example, 534, the purchase receipt to the user. In some deployments, the user device 405 may also provide a successful authorization notification to the user.
Referring to Figures 5D through 5E, in some deployments, the merchant server may initiate release of a batch of authorized transactions. For example, the merchant server can generate batch data request, for example 535, and provide the request, for example 536, to a database, for example, merchant database. In response to the batch data request, the database can provide the requested batch data, for example, 536. The server can generate a Batch Release Request, for example, 537, using the obtained batch data from the database and provide the batch release request to an acquiring server. The acquirer server can generate, for example, 539, a batch payment request using the obtained batch release request and provide the payment request —delot to the payment network server. The payment network server can parse the batch payment request and extract the transaction data for each transaction stored in the batch payment request, for example 540 to 542. The payment network server can store the transaction data , for example 543 to 544, for each transaction in a database, for example payment network database. For each transaction extracted, the payment network server may query, for example, 545 to 546, a database, for example, payment network database,9 for an address of an issuing server. The payment network server can generate an individual payment request, eg 547, for each transaction for which it has transaction data extracted and provide the individual payment request to the associated issuing server.
In some deployments, the issuing server may generate a payment command, for example, 548 to 549. For example, the issuing server may issue a command to deduct funds from the user's account (or add a charge to the user's credit card account). user). The issuing server may issue a payment command, eg 549, to a database that stores the user's account information, eg user profile database. The issuing server may provide a funds transfer message, for example 551, to the payment network server, which may proceed with the funds transfer message to the acquiring server. In some deployments, the acquiring server may parse the funds transfer message and correlate the transaction (eg using the request ID field in the example above) to the merchant. The acquiring server can then transfer the funds specified in the funds transfer message to a merchant account, e.g. 553 to 555.
Figures 6A to 6B show logic flow diagrams illustrating illustrative aspects of processing a Quick Response Code in some embodiments of SNAP, for example, a Quick Response Code Processing Component ((QRCP”) 600. Figure 6A, in some deployments, a virtual wallet application running on a user device can determine whether an OR code was captured in an image frame taken by a camera operatively connected to the user device and can also determine the type, content of the QR code. Using such information, the e-wallet application may redirect the user's user experience and/or initiate purchases, update aspects of the e-wallet application, etc. For example, the e-wallet application may trigger the capture of an image frame by a camera operatively connected to the user's device, 601. The virtual wallet application may utilize an image segmentation rate to identify an advance in the image, 602 and may crop the rest of the image to reduce background noise in the image, 603. The virtual wallet application can determine whether the advance image includes a QR code from which the data can be read reliably (for example, this may not be done if the image does not include a QR code, or the QR code is partially cut off, smeared, etc.), 604. For example, the e-wallet application may use a code library such as the ZXing multi-format 1D/2D barcode image processing library, available at http://code.google.eom/p/zxing/ to try and extract the information from the QR code. If the e-wallet app has the ability to detect a QR code (605, “Yes” option), the e-wallet app can decode the QR code and extract the data from the QR code. If the wallet app is not able to detect a QR code (605, option “no”), the wallet app can try to perform Optical Character Recognition on the image. For example, the virtual wallet application can use the Tesseract C++ open source OCR engine, available at www.pixel-technology.com/freewarw/tessnet2, to perform optical character recognition, 606. In this way, the wallet application virtual can get the data encoded in the image and can continue if the data can be processed by the virtual wallet application. The virtual wallet application can query a database using identified fields in the extracted data for a type of OR code,
608. For example, the QR code could include a billing/invoice, a coupon, a money order (for example, in a P2P transfer), a new package of account information, product information, purchase commands, purchase instructions, URL navigation, browser automation scripts, combinations thereof, and/or the like.
In some embodiments, the QR code may include data on a new account to be added to the e-wallet application (see, 609). The wallet application can query an issuer of the new account (as obtained from the extracted data), for the data associated with the new account, 610. The virtual wallet application can compare —the data provided by the issuer to the data extracted from the QR code , 611. If the new account is validated (611, option “Yes”), the wallet app can update the wallet credentials with the details of the new account, 613 and update the wallet app's snap history with the use of QR code data, 614.
Referring to Figure 6B, in some embodiments, the QR code may include —data without an invoice, billing, or coupon for a purchase using the e-wallet application (see, 615). The Wallet Application may query merchant(s) associated with the purchase (as obtained from the extracted data), for the data associated with the invoice, billing, or coupon for a purchase (e.g., offer details, offer ID , expiration time, etc.), 616. The e-wallet application can compare the — data provided by the merchant to data extracted from the QR code, 617. If the invoice, billing, or coupon for a purchase is validated (618, option “Yes”), the virtual wallet application can generate a data structure (see e.g. data structure
QR data in XML in the description above with reference to Figures 4 to 5) including the QR encoded data to generate and provide a card authorization request, 619 and update the eWallet app snap history using the data from the QR code, 620.
In some embodiments, the OR code may include product information, commands, user navigation instructions, etc. for the virtual wallet application (see, 621). The e-wallet application can query a product database using the information encoded in the QR. The Wallet Application may provide various features including, without limitation, displaying product information, redirecting the user to: a product page, a merchant website, a product page on a merchant website, adding item (s) to a user's shopping cart on a merchant's website, etc. In some deployments, the wallet application may perform a procedure as described above for any image frame pending to be processed, and/or selected for processing by the user (eg from snap history).
Figure 7 shows a user interface diagram that illustrates an overview of exemplifying features of virtual wallet applications in some SNAP modalities. Figure 7 shows an illustration of various exemplifying features of a virtual wallet mobile application 700. Some of the displayed features include a wallet 701, social integration via TWITTER, FACEBOOK, etc., offers and loyalty 703, mobile shopping by snap 704 , alerts 705, and security, definition, and analytics 796. These features are explored in further detail below.
Figures 8h to 8G show user interface diagrams that illustrate exemplifying features of virtual wallet applications in a consumption mode, in some SNAP modalities. Referring to Figure 8A, some modalities of the e-wallet mobile application greatly facilitate and enhance the consumer's consumption experience. A variety of consumption modes, as shown in Figure 8A, may be available for a consumer to read carefully. In a deployment, for example, a user can launch consumption mode by selecting purchase item 810 at the bottom of the user interface. A user can type in an item in the search field 812 to search for and/or add an item to a cart 811. A user can also use a voice activated mode of consumption by saying the name or description of an item to be searched for. and/or added to cart on a microphone 813. In an additional deployment, a user can also select other consumption options 814 such as current items 815, invoices 816, address book 817, merchants 818, and local vicinity 819.
In one embodiment, for example, a user can select the current items option 815, as shown in the leftmost user interface of Figure 8A. When the current items option 815 is selected, the middle user interface can be displayed. As shown, the intermediate user interface can provide a current list of items 815a-h in a shopping cart of user 811. A user can select an item, for example item 815a, to view product description 815j of the selected item and /or other items from the same merchant. The price and total payable information can also be displayed, along with an 815k QR code that captures the information needed to complete a mobile snap purchase transaction.
Referring to Figure 8B, in another embodiment, a user can select the invoices 816 option. By selecting the 816 Invoices option, the user interface can display a list of 816a-h invoices and/or receipts from one or more merchants. Following each of the invoices, additional information such as visit date, whether items from multiple stores are present, last invoice payment date, auto payment, number of items, and/or the like can be displayed. In one example, wallet consumption invoice 816a dated January 20, 2011 can be selected. The Wallet Consumption Invoice selection can display a user interface that provides a variety of information related to the selected invoice. For example, the user interface can display a list of 816k items purchased, <<816i>>, a total number of items, and the corresponding value. For example, 7 items worth $102.54 were on the selected wallet bill. A user can now select any of the items and select buy again to add to buy items. The user can also update 816j to clear any offers that were invalid from the last time and/or search for new offers that may be applicable to the current purchase. As shown in Figure 8B, a user can select two items to repeat the purchase. Upon addition, an 8161 message may be displayed to confirm the addition of the two items, which make up the total number of items in the cart 14.
Referring to Figure 8C, in yet another embodiment, a user may select the address book option 817 to view the address book 817a which includes a contact list 817b and makes any money transfers or payments. In one embodiment, the address book may identify each contact using their names and available and/or preferred modes of payment. For example, an Amanda G. contact can be paid through social payment (eg through FACEBOOK) as indicated by the 817c icon. In another example, money can be transferred to BrianS. via the QR code as indicated by the QR code icon 817d. In yet another example, Charles B. can accept payment via short distance communication 817e, Bluetooth 817f and e-mail 8179. Payment can also be made via USB 81711 (eg by physically connecting two mobile devices) as well. as well as other social channels such as TWITTER. In a deployment, a user can select Joe P. for payment. Joe P., as shown in the user interface, has an 8179 email icon next to his name indicating that Joe P. accepts payment via email. When your name is selected, the user interface can display your contact information such as email, phone, etc. If a user wants to make a payment to Joe P. by a method other than email, the user can add another 817j transfer mode to their contact information and create a payment transfer. Referring to Figure 8D, the user can be provided with an 817k screen where the user can enter an amount to send to Joe, as well as add text to provide Joe with context for the payment transaction 8171. The user can choose modes ( eg SMS, email, social network) through which Joe can be contacted via graphical user interface elements, 817m. As the user types, the entered text can be provided for review within an 817n GUI element. When the user has completed entering the required information, the user can press the send button 8170 to send the social message to Joe. If Joe also has an e-wallet app, Joe can review 817p the social payment message within the app, or directly on the social networking website (eg for Twitter'Y, FacebookGO, etc.). Messages may be aggregated from various social networks and other sources (eg SMS, e-mail). The appropriate recovery method for each message mode can be indicated next to the payment social message. In the illustration in Figure 8D, the SMS 817q that Joe received indicates that Joe can recover the $5 obtained via SMS by replying to the SMS and entering the value in —hashtag'f1234. In the same illustration, Joe also received an 817r message via FacebookG&, which includes a URL link that Joe can activate to initiate recovery of the $25 payment.
Referring to Figure 8E, in some other embodiments, a user may select merchants 818 from the picklist in consumer mode to view a selected list of merchants 818a-e. In a deployment, merchants on the list may be affiliated with the wallet, or have an affinity relationship with the wallet. In another deployment, merchants can include a list of merchants that meet a user-defined or other criteria. For example, the list could be one that is curated by the user, merchants where the user most often consumes or spends more than x amount of sum or has consumed for three consecutive months, and/or similar. In a deployment, the user can additionally select one of the merchants, Amazon 818A for example. The user can then browse through the merchant's listings to find items of interest such as 818f-j. Directly through the wallet and without visiting the merchant's website from a separate page, the user can make a selection of an item 818j from the Amazon catalog 818a. As shown in the rightmost user interface of Figure 8D, the selected item can then be added to the cart. The 818kK message indicates that the selected item has been added to the cart and the updated number of items in the cart is now 13.
Referring to Figure 8F, in one embodiment, there may be a local proximity option 819 that can be selected by a user to view a list of merchants that are geographically in close contact with the user. For example, the merchant list 819a-e might be merchants that are located close to the user. In a deployment, the mobile application can additionally identify when the user is in a store based on the user's location. For example, position icon 819d can be displayed next to a store (eg Walgreens) when the user is in large contact with the store. In a deployment, the mobile application may update its location periodically in case the user has moved from the store (eg Walgreens). In an additional deployment, the user can browse selected Walgreens store offerings via the mobile app. For example, the user can navigate, using the mobile app, to the 819f-j items available in aisle 5 at Walgreens. In a deployment, user can select millet 819i from their mobile app to add to cart 819k.
Referring to Figure 8G, in another embodiment, the local proximity option 819 may include a store map and a real-time map feature among others. For example, upon selecting the Walgreens store, the user can launch an aisle map 819I which displays an 819m map showing the store organization and the user's position (indicated by a yellow circle) In a deployment, the user can easily configure the map to add one or more other users (for example, the users' children) to share each other's location within the store. In another deployment, the user may have the option of launching a "shop view" similar to street views on maps. The 819n store view can display images/video of the user's surroundings. For example, if the user is about to enter aisle 5, the store view map can show the aisle 5 view. Additionally, the user can manipulate the map orientation by using the 8190 navigation tool to move the view. of the store forward, backward, right, left as well as clockwise and counterclockwise.
Figures 9A to F show user interface diagrams that illustrate exemplifying features of virtual wallet applications in a payment mode, in some SNAP modalities. Referring to Figure 9A, in one embodiment, the mobile wallet application may provide a user with a number of options for paying for a transaction via the wallet mode 910. In one implementation, an exemplary user interface 911 for making a payment is shown. The user interface can clearly identify the quantity 912 and currency 913 for the transaction. The amount may be the payable amount and the currency may include real currencies such as dollars and euros, as well as virtual currencies such as reward points. Transaction amount 914 can also be prominently displayed on the user interface. The user may select the funds tab 916 to select one or more payment methods 917, which may include various credit, debit, gift, reward, and/or prepaid cards. The user can also have the option to pay, in whole or in part, with rewards points. For example, the 918 graphic indicator in the user interface shows the number of points available, the 919 graphic indicator shows the number of points to use against the amount owed 234.56 and the 920 equivalent of the number of points in a selected currency (USD, for example).
In one deployment, the user can combine funds from multiple sources to pay for the transaction. The amount 915 displayed on the user interface can provide an indication of the amount of total funds covered so far by the selected payment methods (eg Discover Card and reward points). The user can choose another payment method or adjust the amount to be debited from one or more payment methods until the amount 915 equals the payable amount 914.
Once the amounts to be debited from one or more payment methods are finalized by the user, payment authorization can begin.
In a deployment, the user can select secure transaction authorization by selecting the mask 922 button to effectively mask or preserve anonymity some (e.g. pre-configured) or all identifying information so that when the user selects the pay button 921, the authorization transaction is conducted securely and anonymously. In another deployment, user can select pay button 921 which can use standard authorization techniques for transaction processing. In yet another implementation, when the user selects the social button 923, a transaction-related message can be communicated to one of more (user-defined) social networks that can post or advertise the purchase transaction on a social forum such as a post wall or a tweet. In a deployment, the user can select a social payment processing option
923. The 924 indicator can show the authorization and submission social shared data in progress.
In another implementation, a restricted payment mode 925 may be activated for certain purchasing activities such as prescription shopping. The mode can be activated according to rules defined by issuers, insurers, merchants,
payment processor and/or other entities to facilitate the processing of specialized goods and services. In this mode, the user can scroll down the list of payment methods 926 under the funds tab to select specialized accounts such as a flexible spending account (FSA) 927, individual health account (TEM), and/or the like and amounts to be debited to the selected accounts. In one deployment, such 1925 restricted payment mode processing may disable social sharing of purchase information. In one embodiment, the wallet mobile application can facilitate import of funds through the 928 import funds user interface. For example, a user who is unemployed can obtain 929 unemployment benefit fund through the wallet mobile application. . In a deployment, the entity providing the funds can also set up rules for using the funds as shown by the processing indicator message 930. The wallet can read and apply the rules beforehand and can reject any purchases with the unemployment funds that fail to meet the criteria defined by the rules. Examples of exemplifying criteria may include, for example, merchant category code (MCC), transaction time, transaction location, and/or the like. As an example, a transaction with a grocery merchant who has an MCC 5411 may be approved, while a transaction with a bar merchant who has an MCC 5813 may be declined.
Referring to Figure 9B, in one embodiment, the mobile wallet application may facilitate dynamic payment customization based on factors such as user location, preferences, and currency value preferences among others. For example, when a user is in the United States, the country indicator 931 can display a US flag and can set the currency 933 to the United States. In an additional deployment, the mobile wallet app can automatically rearrange the order in which 935 payment methods are listed to reflect the popularity or acceptability of various payment methods. In a deployment, the disposition may reflect user preference, which may not be changed by the mobile wallet application.
Similarly, when a German user operates a wallet in Germany, the mobile wallet application user interface can be dynamically updated to reflect country of operation 932 and currency 934. In a further deployment, the wallet application can the order in which different 936 payment methods are listed based on their level of acceptance in that country. Of course, the order of these payment methods can be modified by the user to his/her own preferences.
Referring to Figure 90, in one embodiment, the payee tab 937 in the mobile wallet application user interface can facilitate user selection of one or more payees who receive the funds selected in the funds tab. In a deployment, the user interface can show a list of all payees 938 that the user has previously transacted with or are available to transact with. The user can then select one or more payees. 938 beneficiaries can include larger merchants such as Amazon.com Inc. and individuals such as Jane P. Doe. Next to each payee name, a list of payment modes accepted for the payee can be displayed. In a deployment, the user can select the Jane P. Donate 939 beneficiary to receive payment. Upon selection, the user interface can display additional identifying information related to the payee. Referring to Figure 9D, in one embodiment, the 1940 mode tab can facilitate the selection of a payment mode accepted by the payee. A number of payment modes may be available for selection. Exemplary modes include, bluetooth 941, wireless 942, mobile snap via QR code obtained by user 943, security chip 944, TWITTER 945, near-distance communication (NFC) 946, mobile phone 947, mobile snap via QR code provided by user 948, USB 949 and FACEBOOK 950, among others. In a deployment, only the payment modes that are accepted by the payee can be selectable by the user. Other non-accepted payment modes can be disabled. Referring to Figure 9E, in one embodiment, the offer tab 951 may provide real-time offers that are relevant to items in a user's cart for selection by the user. User can select one or more offers from the list of applicable offers 952 for retrieval. In a deployment, some offerings may be combined, while others may not. When the user selects an offer that cannot be combined with another offer, offers not selected may be disabled. In an additional deployment, offers that are recommended by the wallet application's recommendation engine can be identified by an indicator such as the one shown by
953. In an additional deployment, the user can read the offer details by expanding the offer row as shown by 954 in the user interface. Referring to Figure 9F, in one embodiment, the social tab 955 can facilitate the integration of the wallet application with the social channels 956. In a deployment, a user can select one or more social channels 956 and can subscribe to the selected social channel from the 956. wallet app by providing the wallet app with the 957 social channel username and password and 958 subscription. The user can then use the 959 social button to send or receive money through the integrated social channels. In an additional deployment, the user can send shared social data such as purchase information or links through integrated social channels. In another embodiment, user-provided login credentials can allow SNAP to engage in intercept analysis.
Figure 10 shows a user interface diagram illustrating virtual wallet application exemplifying features, in a history mode, in some SNAP modalities. In one embodiment, a user can select history mode 1010 to view a history of past purchases and perform various actions on those past purchases. For example, a user can enter merchant identifying information such as name, product, MCC, and/or similar in the 1011 search bar. In another deployment, the user can use the voice-activated search feature by clicking the microphone icon 1014. The wallet application may query storage areas on the mobile device or elsewhere (eg, one or more databases and/or remote tables on the mobile device) for transactions compatible with the search keywords. The user interface can then display the query results such as transaction 1015. The user interface can also identify the transaction date 1012, merchants and transaction-related items 1013, a receipt barcode that confirms that a transaction was made, the amount of the transaction and any other relevant information.
In a deployment, the user can select a transaction, for example transaction 1015, to view the transaction details. For example, the user can view the details of the items associated with the transaction and the 1016 quantities of each item. In an additional deployment, the user can select the 1017 view option to view the 1018 actions the user can take in relation to the transaction or items in the transaction. For example, the user can add a photo to the transaction (for example, a photo of the user and the iPad the user purchased). In an additional deployment, if the user previously shared the purchase through social channels, a post that includes the photo can be generated and sent to social channels for — publishing. In a deployment, any sharing can be optional and the user, who has not shared the purchase through social channels, can still share the photo through one or more social channels of their choice directly from the Wallet app's history mode. In another deployment, the user can add the transaction to a group such as company costs, home costs, travel costs, or other user-defined categories. Such grouping may facilitate year-end cost accounting, submission of labor cost reports, submission for value added tax (VAT) reimbursements, personnel costs, and/or the like. In yet another deployment, the user can purchase one or more items purchased in the transaction. The user can then perform a transaction without going to the merchant's catalog or website to find the items. In an additional deployment, the user can also add one or more items in the transaction to the cart for later purchase.
The history mode, in another mode, can provide facilities to obtain and display 1019 ratings of the items in the transaction. The source of ratings can be the user, the user's friends (eg from social channels, contacts, etc.), aggregated web reviews, and/or the like. The user interface in some deployments may also allow the user to post messages to other users of social channels (eg TWITTER or FACEBOOK). For example, display area 1020 shows FACEBOOK message exchanges between two users. In a deployment, a user can share a link via a 1021 message. Selecting such a message that has a link embedded in a product may allow the user to view a description of the product and/or purchase the product directly from the history mode .
In one embodiment, the history mode may also include facilities for exporting receipts. The Export Receipts pop-up window 1022 can provide a number of options for exporting transaction receipts in the history. For example, a user may use one or more of the 1025 options, which include saving (to local mobile memory, server, cloud account, and/or the like), printing to a printer, fax, email, and/or similar. User can use their 1023 address book to look up e-mail or fax number to export. User can also specify 1024 format options for exporting receipts. Exemplary format options may include, without limitation, text files (doc,.txt,.rtf, iif, etc.), spreadsheet (.csv,.xls, etc), image files (.jpg, . tff,.png, etc.), portable document format (pdf), postscript (ps), and/or similar. The user can then click or tap the export 1027 button to start exporting receipts.
Figures 11A to 11F show user interface diagrams that illustrate exemplifying features of virtual wallet applications in a snap mode, in some — SNAP modalities. Referring to Figure 11A, in some embodiments, a user can select a 1101 snap mode to access snap features. In various modalities, the virtual wallet application can photograph and identify a variety of items. For example, the e-wallet application can photograph and identify a purchase billing 1103, a coupon 104, money (e.g. sent in a person-to-person transfer)1105, an invoice (e.g. services, etc.) 1106 , a receipt (eg for storing, reporting costs, etc.) 1107, a payment account (eg for adding a new credit/debit/prepaid card to the virtual wallet application) 1108. User can return to a consumption screen at any time by activating a graphical user interface element 1102. In some embodiments, the user can define a —name of a cart or wish list stored within the user's virtual wallet application to which the photographed item must be sent (see, 1109). In some
| 51/81 modalities, the virtual wallet application can allow a user to create a new cart or wish list to which photographed items must be added.
In one embodiment, a user can select 1110 snap mode to access its snap features. Snap mode can manage any machine-readable representation of data. Examples of such data may include linear and 2D bar codes such as UPC code and QR codes. These codes can be found on receipts, product packaging, and/or the like. Snap mode can also process and manage photographs of receipts, products, offers, credit card or other payment devices, and/or the like. An example user interface in snap mode is shown in Figure 11A. A user can use their mobile phone to take a picture of a QR code 1115 and/or a barcode 1114. In a deployment, the bar 1113 and snap frame 1115 can assist the user in shooting codes appropriately. For example, the 1115 snap frame as shown does not capture the integrity of the 1116 code. As such, the code captured in this view may be resolvable as the information in the code may be incomplete. This is indicated by the message at bar 1113 which indicates that snap mode is still looking for the code. User can modify the camera's 1117 magnification level to facilitate QR code shooting. When the 1116 code is completely framed by the 1115 snap frame, the slash message can be updated, for example, "snap found." Upon finding the code, in a deployment, the user can initiate code capture using the mobile device camera (see, 1120). In another deployment, snap mode can automatically snap code using mobile device camera (see, 1119). In some deployments, the virtual wallet application can optionally apply a global positioning system tag (see, 1118) to the QR code before — storing it, or using it in a transaction.
Referring to Figure 11B, in one embodiment, snap mode can facilitate post-payment reallocation transaction. For example, a user may purchase grocery and prescription items from an Acme supermarket retailer. The user may inadvertently or to facilitate checkout, for example, use their Visa card to pay for both grocery and prescription items. However, the user may have an FSA account that could be used to pay for prescription items and that would provide the user with fee benefits. In such a situation, user can use Snap mode to start transaction reallocation.
As shown, the user can enter a search term (eg invoices) in the search bar 2121. The user can then identify in the tab 1122 the receipt 1123 that the user wants to reallocate. Alternatively, the user can directly photograph a photo of a barcode on a receipt and the snap mode can generate and display an 1123 receipt using information from the barcode. The user can now reallocate 1125. In some deployments, the user can also dispute transaction 1124 or file receipt 1126. In a deployment, when the reallocate button 1125 is selected, the wallet application can perform optical character recognition (OCR ) of the receipt. Each of the items on the receipt can then be examined to identify one or more items that could be loaded that the payment device or bills for a fee or other benefits such as cashback, reward points, etc. In this example, there is a fee benefit if the prescription drug loaded to the user's Visa card is loaded to the user's FSA. The wallet application can then perform Reallocation as termination. The relocation process may include the wallet contacting the payment processor to credit the amount of the prescription drug to the Visa card and debit the same amount to the user's FSA account. In an alternative deployment, the payment processor (eg, Visa or MasterCard) can obtain and OCR the receipt, identify payment items and accounts for reallocation, and perform the reallocation. In a deployment, the wallet application may prompt the user to confirm the relocation of loads for the selected item to another payment account. Receipt 1127 can be generated after the relocation process is complete. As discussed, the receipt shows that some charges were moved from the Visa account to the FSA.
Referring to Figure 11C, in one embodiment, the snap mode can facilitate payment via payment code such as barcodes or QR codes. For example, a user can photograph a QR code for a transaction that is not yet complete. The QR code can be displayed on a merchant POS terminal, a website, or a web application and can be encoded with information that identifies items for purchase, merchant details, and other relevant information. When the user snaps something like a QR code, the snap mode can decode the information in the QR code and can use the decoded information to generate a 1132 receipt. Once the QR code is identified, the 1131 navigation bar can indicate that the payment code is identified. The user can now have an option to add to cart 1133, pay with a standard payment account 1134 or pay with a wallet 1135.
In one deployment, the user may decide to pay with default 1134. The wallet application can then use the user's default payment method, in this example the wallet, to complete purchase transactions. Upon completion of transactions, a receipt can be automatically generated as proof of purchase. The user interface can also be updated to provide other options for handling a completed transaction. Exemplary options include social 1137 to share purchase information with others, relocate 1138 as discussed in connection with Figure 11B, and archive 1139 to store the receipt.
Referring to Figure 11D, in one embodiment, the snap can also facilitate an offer, application, and storage identification for future use. For example, in a deployment, a user can photograph an offer code 1141 (eg a —bar code, a QR code and/or the like). The wallet application can then generate an offer text 1142 from the information encoded in the offer code. The user can perform various actions on the offer code. For example, the user uses the 1143 search button to find all merchants who accept the offer code, nearby merchants who accept the offer code, products from eligible merchants —for the offer code and/or the like. The user can also apply the offer code to items that are currently in the cart using the add to cart button 1144. Furthermore, the user can also save the offer for future use by selecting the save button 1145. In a deployment , after the 1146 offer or coupon is applied, the user may have the option to find qualified products and/or merchants with the use of locate, the user can go to 1148 wallet and the user can even save the offer or coupon 1146 for later use. Referring to Figure 11E, in one embodiment, snap mode can also provide facilities for adding a funding source to the wallet application. In one deployment, a payment card such as a credit card, debit card, prepaid card, smart card and other payment accounts may have an associated code such as a barcode or QR code. Such code may have payment card information encoded in it which includes, but is not limited to, name, address, payment card type, payment card account details, balance amount, spending limit, rewards balance, and /or similar. In a deployment, the code can be found on one face of the physical payment card. In another deployment, the code can be obtained by logging into an associated online account or other secure location. In yet another deployment, the code can be printed on a letter that accompanies the payment card. A user in a deployment can photograph an image of the code. The wallet application can identify the payment card 1151 and can display the textual information 1152 encoded on the payment card. The user can then perform verification of the 1152 information by selecting the verify 1153 button. In a deployment, verification may include contacting the payment card issuer for confirmation of the decoded 1152 information and any other relevant information. In a deployment, the user can add the payment card to the wallet by selecting the "add to wallet" button 1154. The instruction to add the payment card to the wallet can do
| causing the payment card to appear as one of the payment methods under the funds tab 916 discussed in Figure 9A. The user can also cancel the payment card import as a funding source by selecting the cancel button 1155. When the payment card has been added to the wallet, the user interface can be updated to indicate that the import is complete via from the notification display 1156. The user can then access the wallet 1157 to begin using the added payment card as a funding source.
Referring to Figure 11F, in some deployments the wallet application may identify a product from QR code processing, and may provide information about the product, as well as information about options to purchase the product, ancillary services, and/or the like. . For example, the e-wallet application may provide a window 1161, where the e-wallet application can display images, product specification, pricing, merchant information, and/or the like (see 1162). In some deployments, the e-wallet application may provide a QR code that includes the displayed information, so that another user can quickly photograph the information to import it into another e-wallet application. In some deployments, the wallet application may provide features so that a user can request concierge services (e.g. assistance during purchase), shipping services (e.g. so that the user can leave a store without loading items), 1164. In some deployments, the wallet application may provide competitive pricing from local merchants (e.g., using the user's device's GPS location) or Internet merchants (see 1165) In some deployments, the application wallet can provide the user with features that include, but are not limited to: viewing previous snaps, shooting a new code, adding GPS tags to codes, retrieving a previously photographed code for use, entering manual information about a QR code, assigning the QR code to an object (e.g. so that QR codes for home furniture products can be grouped into a "furniture" object which room", for organizational purposes), etc. (see 1166). In some embodiments, the user may be able to define a name of a cart or wish list stored within the user's virtual wallet application to which the photographed item is to be sent (see 1167). In some embodiments, the virtual wallet application may allow a user to create a new cart or wish list to which photographed items must be added. Figure 12 shows a user interface diagram illustrating exemplary features of virtual wallet applications, in an offerings mode, in some SNAP modalities. In some deployments, SNAP may allow a user to search for offers for products and/or services from within the mobile wallet application.
For example, the user may enter text into a graphical user interface ("GUI") element 1211, or issue voice commands by activating the GUI element 1212 and speaking commands into the device.
In some deployments, SNAP may provide offers based on past user behavior, demographics, current location, current purchase or selection items in cart, and/or the like.
For example, if a user is in a physical store, or an online shopping website, and leaves the (virtual) store, then the merchant associated with the store may wish to provide a better deal to attract the consumer back to the store. (virtual). The merchant may provide such an offer 1213. For example, the offer may provide a discount, and may include an expiration time.
In some deployments, other users may provide free gifts (eg, 1214) to the user, which the user can redeem.
In some deployments, the offers section may include alerts regarding the payment of outstanding funds to other users (eg 1215). In some deployments, the offers section may include alerts regarding requesting receipt of funds from other users (eg 1216). For example, such a feature may identify funds receivable from other applications (eg, email, calendar, tasks, notes, reminder programs, alarm, etc.), or through manual entry by the user into the e-wallet application.
In some deployments, the offers section may provide offers from participating merchants in SNAP, e.g. 1217 to 1219, 1220. These offers can sometimes be grouped together using a combination of participating merchants, e.g. 1217. In some deployments, SNAP itself may provide offers to users depending on the user's use of particular forms of payment from within the virtual wallet application, e.g. 1220. : Figures 13A to 13B show user interface diagrams that illustrate exemplary features of virtual wallet applications, in a privacy and security mode, in some SNAP modalities.
Referring to Figure 13A, in some deployments the user may be able to view and/or modify the user's definitions and/or user profile, for example by activating a user interface element.
For example, the user may be able to view, modify a username (e.g. 1311aab), an account number (e.g. 1312a ab), a user security passcode (e.g. 1313-b), a user pin (e.g. 1314-b), a user address (e.g. 1315-b), a social security number associated with the user (e.g. 1316-b), the device's current GPS location (e.g. 1317-b), the user account of the merchant whose store the user is currently at (e.g. 1318-b), the user's rewards accounts (e.g. 1319-b), and/or the like.
In some deployments, the user may be able to select which of the data fields and associated values thereof should be transmitted to facilitate purchase transactions, thus providing enhanced data security for the user. For example, in the example illustration in Figure 13A, the user has selected name 1311a, account number 1312a, security code 1313a, merchant account ID 1318a, and rewards account ID 1319a as the fields to be sent as part of the notification to process purchase transactions. In some deployments, the user can toggle data values and/or fields that are sent as part of the notification to process purchase transactions. In some deployments, the application may provide multiple screens of stored data fields and/or associated values for the user to select as part of the purchase order transmission. In some deployments, the application may provide SNAP with the user's GPS location. Based on the user's GPS location, SNAP can determine the user's context (eg, whether the user is in a store, a doctor's office, a hospital, a postal service agency, etc.). Based on context, the user application can present appropriate fields to the user, from which the user can select field values and/or fields to send as part of the purchase order transmission.
For example, a user might go to the doctor's office and wish to pay co-payment for the doctor's appointment. In addition to basic transaction information such as name and account number, the application may provide the user with the ability to select transfer of medical records, health information, which may be provided to the medical service provider, insurance company, as well as as well as to the transaction processor to reconcile payments between the parties. In some deployments, records may be sent in an encrypted Health Insurance Portability and Accountability Act (HIPAA) compliant data format, and only recipients who are authorized to view such records may have appropriate decryption keys to decrypt and view the user's private information.
Referring to Figure 13B, in some deployments, the application running on the user's device may provide a "Check Chat" feature to prevent fraud. For example, SNAP can detect suspicious and/or unusual transactions. SNAP may utilize the Verify Chat feature to communicate with the user and verify the authenticity of the originator of purchase transactions. In many deployments, SNAP can send an email message, text messages (SMS), messages via Facebook8, tweets via Twitter"", text chat, voice chat, via video (eg Apple's FaceTime) and/or the like to communicate with the user. For example, SNAP can initiate a video challenge to the user, for example 1321. For example, the user can
| 57/81 need to introduce themselves via video chat, for example 1322. In some deployments, a customer service representative, for example a 1324 agent, can manually determine user authenticity using of the user's video.
In some deployments, SNAP may use facial, biometric and/or similar recognition (eg using pattern classification techniques) to determine a user's identity.
In some deployments, the application may provide a reference marker (e.g. cross-shaped, target box, etc.), e.g. 1323, so that the user can utilize the video to facilitate automated SNAP recognition of the user.
In some deployments, the user may not have initiated transactions, for example, the transaction is fraudulent.
In such deployments, the user can cancel the challenge.
SNAP may then cancel transactions and/or initiate fraud investigation procedures on behalf of the user.
In some deployments, SNAP may use a text challenge procedure to verify the authenticity of the user, for example, 1325. For example, SNAP may communicate with the user via text chat, text messages, SMS, email, Facebook messages, Twitter tweets" and/or similar.
SNAP can present a challenge question, for example 1326, to the user.
The application can provide a user input element(s) (for example, a 1328 virtual keyboard) to answer the challenge question presented by SNAP.
In some deployments, the challenge question may be randomly selected by SNAP automatically; in some deployments, a customer service representative can manually communicate with the user.
In some deployments, the user may not have initiated transactions, for example, the transaction is fraudulent.
In such deployments, the user can cancel the text challenge.
SNAP may cancel transactions and/or initiate a fraud investigation on behalf of the user.
SNAP Controller Figure 14 shows a block diagram illustrating embodiments of a SNAP controller 1401. In that embodiment, the SNAP controller 1401 may serve to aggregate, process, store, lookup, serve, identify, instruct, generate, conjugate and/or facilitate interactions with a computer through various technologies and/or other related data.
Typically, users, eg 1433a, which may be people and/or other systems, may engage information technology systems (e.g., computers) to facilitate information processing.
In turn, computers employ processors to process information; such processors 1403 may be called central processing units (CPU). One form of processor is called a microprocessor. CPUs use communicative circuits to pass encoded binary signals that act as instructions to enable various operations. These instructions may be data and/or operational instructions that contain and/or reference other instructions and data in various areas of memory operable and accessible by the 1429 processor (e.g. registers, cache memory, random access memory, etc.) . Such communicative instructions may be stored and/or transmitted in batches (eg batches of instructions) as components of data and/or programs to facilitate desired operations. These stored instruction codes, eg programs, can engage CPU and other circuit components—system components and/or motherboard to perform desired operations. One type of program is a computer operating system, which can be run by a CPU on a computer; the operating system enables and facilitates users to access and operate computer resources and information technology. Some features that can be employed in information technology systems include: input and output mechanisms through which data can pass into or out of a computer; a memory store to which data can be saved; and processors through which information may be processed. These information technology systems can be used to collect data for later retrieval, analysis and manipulation, which can be facilitated through a database program. These information technology systems provide interfaces that allow users to access and operate various system components.
In one embodiment, the SNAP controller 1401 may be connected to entities and/or may communicate with such entities such as, but not limited to: one or more users from user input devices 1411; peripheral devices 1412; an optional 1428 cryptographic processor device; and/or a communications network
1413. For example, SNAP controller 1401 may be connected to and/or communicate with users, e.g. 1433a, operating client device(s), e.g. 1433b, including, but not limited to, personal computer(s), server(s) and/or various mobile device(s) including, but not limited to, cell phones, smartphone-type phone(s) (e.g. Android OS-based phones, iPhoneG , BlackberryO, etc.), tablet computer(s) (e.g. Apple iPad"Y, HP Slate”, Motorola Xoom""Y, etc.), e-book reader(s) (e.g. , Kindle"" by Amazon, Barnes and Noble's Nook"” eReader, etc.), laptop computer(s), notebook computer(s), netbook computer(s), game console(s) ( e.g. XBOX Live", Nintendo DS, Sony PlayStation & Portable, etc.), handheld scanner(s) and/or the like.
Networks are commonly considered to comprise the interconnection and interoperation of clients, servers, and intermediate nodes in a graph topology. It should be noted that the term "server" as used throughout this order generally refers to a computer, other device, program, or combination thereof that processes and responds to requests from remote users over a communications network. Servers serve their information to request "clients". The term "client" as used herein generally refers to a computer, program, other device, user and/or combination thereof that is capable of processing and making requests and obtaining and processing any responses from servers through a communications network. A computer, other device, program, or combination thereof that facilitates, processes information and requests, and/or encourages the passing of information from a source user to a target user is commonly referred to as a "node". Networks are generally considered to facilitate the transfer of information from source points to destinations. A node specifically charged with encouraging the passage of information from a source to a destination is commonly referred to as a "router". There are many forms of networks such as Local Area Networks (LANs), Peak networks, Wide Area Networks (WANs), Wireless Networks (WLANs), etc. For example, the Internet is generally accepted to be an interconnection of a multitude of networks through which remote clients and servers can access and interoperate with each other.
The SNAP controller 1401 may be based on computer systems that may comprise, but are not limited to, components such as: a computer system 1402 connected to memory 1429.
Computer Systematization A computer systematization 1402 may comprise a clock 1430, a central processing unit ("CPU(s)" and/or "processor(s)" (these terms are used interchangeably throughout the disclosure unless indicated in otherwise)) 1403, memory 1429 (e.g., a read-only memory (ROM) 1406, a random access memory (RAM) 1405, etc.), and/or an interface bus 1407, and more often, though not necessarily all are interconnected and/or communicate via a 1404 system bus on one or more 1402 motherboard(s) that have/have conductive circuit paths and/or some other form of transport through which instructions (e.g., encoded binary signals) can take a path to perform communications, operations, storage, etc. The computer system can be connected to a 1486 power supply; for example — optionally the power supply can be internal. Optionally, a cryptographic processor 1426 and/or transceivers (eg, ICs) 1474 can be connected to the system bus. In another embodiment, the cryptographic processor and/or transceivers may be connected as internal and/or external peripheral devices 14122 via the 1/O interface bus. In turn, the transceivers can be connected to the antenna(s) 1475, thereby effecting wireless transmission and reception of various sensor and/or communication protocols; for example, the antenna(s) can —connect to the Texas Instruments WiLink WL1283 transceiver chip (for example, which provides a local positioning system (GPS), Bluetooth 3.0.8 FM, and 802.11n ( thereby allowing the SNAP controller to determine their location)); Broadcom BCM4329FKUBG transceiver chip (for example, which provides
802.11n, Bluetooth 2.1 + EDR, FM, etc.); a Broadcom BCM4750/UB8 transceiver chip (eg GPS); an X-Gold 618-PMB9800 from Infineon Technologies (eg, providing 2G/3G HSDPA/HSUPA communications); and/or similar. The system clock typically has a crystal oscillator and generates a base signal through the circuit paths of the computer systematization. The clock is typically coupled to the system bus and various clock multipliers that will increase or decrease the base operating frequency for other interconnected components in the computer systematization. The clock and various components in a computer systematization trigger signals that embody information throughout the system. Such transmission and reception of information that embodies instructions throughout a computer systematization may commonly be called communications. These communicative instructions may be additionally transmitted, received, and then cause return and/or response communications beyond instant computer systematization to: communications networks, input devices, other computer systematizations, peripheral devices and/or the like. It should be understood that in alternative embodiments, any of the above components may be directly connected to each other, connected to the CPU, and/or organized into numerous variations employed as exemplified across various computer systems.
The CPU comprises at least one high speed data processor suitable for executing program components to execute user and/or system generated requests. Often, the processors themselves will incorporate several specialized processing units, such as, but not limited to: integrated system (bus) controllers, memory management control units, floating point units, and even specialized processing subunits such as such as graphics processing units, digital signal processing units and/or the like. In addition, processors may include internal, fast-access addressable memory, and may be able to map and address memory 1429 in addition to the processor itself; internal memory may include, but are not limited to: fast logs, various levels of cache memory (e.g. level 1, 2, 3, etc.), RAM,
etc. The processor can access this memory through the use of a memory address space that is accessible through an instruction address, which the processor can build and decode allowing it to access a circuit path to a memory address space. specific that has a memory state. The CPU may be a microprocessor such as: Opteron, Duron, and/or AMD's Athlon; ARM's secure, embedded application processors; DragonBall and PowerPC from IBM and/or Motorola; Cell processor from IBM and Sony; Intel's Celeron, Core (2) Duo, Itanium, Pentium, Xeon, and/or XScale; and/or similar processor(s). The CPU interacts with memory via an instruction that passes through transport and/or conduction conduits (e.g. optical and/or electronic (printed) circuits) to execute stored instructions (i.e. program code) according to conventional data processing techniques. Such instruction passing facilitates communication within the SNAP controller and beyond across various interfaces. If processing requirements dictate a greater amount of speed and/or capacity, supercomputer, parallel, multi-core, mainframe, and/or distributed processor architectures (eg, Distributed SNAP) can be similarly employed. Alternatively, if installation requirements dictate greater portability, smaller Personal Digital Assistants (PDAs) may be employed.
Depending on the particular deployment, SNAP capabilities can be achieved by deploying a microcontroller such as a CAST R8051XC2 microcontroller; Intel's MCS 51 (ie an 8051 microcontroller); and/or similar. In addition, to deploy certain SNAP features, some feature deployments may rely on built-in components, such as: an Application-Specific Integrated Circuit ("ASIC"), Digital Signal Processing ("DSP"), Port — Field Programmable ("FPGA") and/or similar embedded technology. For example, any of the SNAP features and/or component collection (distributed or otherwise) may be deployed through the microprocessor and/or through embedded components; for example, through ASIC, a coprocessor, DSP, FPGA and/or the like. Alternatively, some SNAP deployments may be deployed with built-in components that are configured and used to achieve a variety of features or signal processing.
Depending on the particular deployment, the embedded components may include software solutions, hardware solutions, and/or some combination of both hardware and software solutions. For example, the SNAP capabilities discussed in this paper can be achieved through the implementation of FPGAs, which are semiconductor devices that contain programmable logic components called "logic blocks", and programmable interconnects, such as the Virtex series of FPGAs from high performance and/or the low cost Spartan series manufactured by Xilinx.
The interconnects and logic blocks can be programmed by the customer or design creator, after the FPGA is manufactured, to implement any of the SNAP features.
A hierarchy of programmable interconnects allows blocks of logic to be interconnected as needed by the project creator/administrator of the SNAP system, similar to a one-chip programmable breadboard.
FPGA logic blocks can be programmed to perform basic logic gate operation such as AND, and XOR, or more complex combinatorial operators such as decoders or simple math operations.
In most FPGAs, the logic blocks also include memory elements, which can be flip-flop circuits or more complete blocks of memory.
In some circumstances, SNAP can be developed on regular FPGAs and then migrated to a fixed version that more closely resembles ASIC deployments.
Coordination or staggered deployments can migrate controller by SNAP capabilities to an end ASIC instead of or in addition to FPGAs.
Depending on the deployment, all of the aforementioned microprocessors and embedded components can be considered the "CPU" and/or the "processor" for SNAP.
Power supply The 1486 power supply can be of any standard shape to power small electronic circuit board devices such as the following power cells: solar, alkaline, lithium hydride, lithium ion, lithium polymer, nickel cadmium and/or the like.
Other types of AC or DC power sources can also be used.
In the case of solar cells, in one embodiment the case provides an opening through which the solar cell can capture photonic energy.
Power cell 1486 is connected to at least one of the subsequent interconnected components of the SNAP, thereby providing an electrical current to all subsequent components.
In one example, power supply 1486 is connected to system bus component 1404. In an alternative embodiment, an external power supply 1486 is provided through a connection through the 1/O interface 1408. For example, a connection USB and/or IEEE 1394 adapter carries both data and power across the connection and is therefore a suitable power source.
Interface Adapters The 1407 interface bus(s) can accept, connect to, and/or communicate with multiple interface adapters, although conventionally not necessarily in the form of adapter cards, such as , but not limited to: 1408 input/output (I/O) interfaces, 1409 storage interfaces, 1410 network interfaces, and/or the like.
Optionally, 1427 cryptographic processor interfaces can be connected similarly to the interface bus.
The interface bus provides the interface adapters to communicate with each other as well as with other components of the computer system. Interface adapters are adapted to a compatible interface bus. Interface adapters conventionally connect to the interface bus via a slot architecture Conventional slot architectures may be employed, such as, but not limited to: Accelerated Graphics Port (AGP), Card Bus, Industry Standard Architecture (Extended) ((E)ISA), Micro Channel Architecture (MCA), NuBus, Peripheral Component Interconnect (Extended) (PCI(X)), PCI Express, Personal Computer Memory Card International Association (PCMCIA) and /or similar.
The 1409 storage interfaces can accept, communicate with, and/or connect to various storage devices such as, but not limited to: 1414 storage devices, removable disk devices, and/or the like. Storage interfaces may employ connection protocols such as, but not limited to: Advanced Technology Accessory (Ultra) (Serial) (Packet Interface) (ATA(PI) (Ultra) (Seria))), Integrated Drive Electronics (Enhanced) ((E)IDE), Institute of Electronic and Electrical Engineers (IEEE) 1394, fiber channel, Small Computer Systems Interface (SCSI), Universal Serial Bus (USB) and/or the like.
Network interfaces 1410 may accept, communicate with, and/or connect to a communications network 1413. Through a communications network 1413, the SNAP controller is accessible via remote clients 1433b (e.g., computers with Web browsers). web) through 1433a users. Network interfaces may employ connection protocols such as, but not limited to: direct connection, Ethernet (thick, thin, 10/100/1000 Base T twisted pair and/or similar), Token Ring, wireless connection such as IEEE 802.na-x and/or similar. If processing requirements dictate a greater amount of speed and/or capacity, distributed network controller architectures (e.g., Distributed SNAP) can be similarly employed to accumulate, load balance, and/or otherwise increase bandwidth. communication bandwidth required by the SNAP controller. A communications network can be any and/or combination of the following: a direct interconnect; the Internet; a Local Area Network (LAN); a Metropolitan Area Network (MAN); an Operation Like Nodes on the Internet (OMNI) Mission; a secure custom connection; a Wide Area Network (WAN); a wireless network (for example, employing protocols such as, but not limited to, a Wireless Application Protocol (WAP), I-mode and/or the like); and/or similar. A network interface can be thought of as a specialized form of an input/output interface. In addition, multiple network interfaces 1410 may be used to engage with various types of communications network 1413. For example, multiple network interfaces may be employed to enable communication over broadcast, multicast, and/or multicast networks. or unicast.
Input/Output (1/0) interfaces 1408 may accept to communicate with and/or connect to user input devices 1411, peripheral devices 1412, cryptographic processor devices 1428 and/or the like. VO may employ connection protocols such as, but not limited to: audio: analog, digital, monaural, RCA, stereo and/or similar; data: Apple Desktop Computer Bus (ADB), IEEE 1394a-b, serial, universal serial bus (USB); infra-red; joystick; keyboard; midi; optical; PC AT; PS/2; parallel; radio; video interface: Apple Desktop Computer Connector (ADC), BNC, coaxial, component, composite, digital, Digital Visual Interface (DVI), High Definition Multimedia Interface (HDMI), RCA, RF antennas, S- Video, VGA and/or similar; wireless transceivers: 802.na/b/g/n/x; Bluetooth; cellular (e.g. code division multiple access (CDMA), high speed packet access (HSPA(+)), high speed downlink packet access (HSDPA), global system for mobile communications (GSM), long-term evolution (LTE), WiMax, etc.); and/or similar. A typical output device may include a video monitor, which typically comprises a Cathode Ray Tube (CRT) or a Liquid Crystal Display (LCD) based monitor with an interface (e.g., DVI cable and circuitry). ) that accepts signals from a video interface can be used. The interface combines video information generated through computer systematization and generates video signals based on the combined information in a video memory frame. Another output device is a television set, which accepts signals from a video interface. Typically, the video interface provides the combined video information through a video link interface that accepts a video display interface (e.g., an RCA composite video connector that drives an RCA composite video cable; a DVI connector that accepts a DVI display cable, etc.).
1411 user input devices are often a type of 1412 peripheral device (see below) and may include: card readers, dongle-style connectors, fingerprint readers, gloves, tablet-type graphics computers, —joysticks, keyboards, microphones , mouse (mouses), remote controls, retinal scanners, touch screens (e.g. capacitive, resistive, etc.), stationary mice, trackpads, sensors (e.g. accelerometers, ambient light, GPS, gyroscopes, proximity, etc.), pens and/or similar. Í Peripheral devices 1412 can be connected and/or communicate with 1/O and/or other similar facilities such as network interfaces, storage interfaces, directly to the interface bus, to the system bus, to the CPU and/or the like. Peripheral devices can be external, internal and/or part of the SNAP controller. Peripheral devices may include: an antenna, audio devices (e.g. input channel, output channel, microphone input, speakers, etc.), cameras (e.g. still camera, video camera, video camera of type webcam, etc.), dongle-type devices (e.g. for copy protection, which ensures secure transactions with a digital signature and/or similar), external processors (for added capabilities, e.g. 1428 cryptographic devices), feedback devices (e.g. vibration motors), network interfaces, printers, scanners, storage devices, transceivers (e.g. cell phone, GPS, etc.), video devices (e.g. goggles, monitors, etc.) ), video sources, viewfinders and/or the like. Peripheral devices often include types of input devices (eg, cameras).
It should be noted that while user input devices and peripheral devices may be employed, the SNAP controller may be embedded as an embedded device, dedicated and/or monitorless (i.e., without peripherals), where the — access would be provided over a network interface connection.
Cryptographic units such as, but not limited to, microcontrollers, processors 1426, interfaces 1427, and/or devices 1428 may be secured and/or communicate with the SNAP controller. An MC68HC16 microcontroller, manufactured by Motorola Inc., can be used for and/or within the cryptographic units. The —MC68HC16 microcontroller uses a 16-bit multiply-and-accumulate instruction in the 16 MHz configuration and requires less than a second to perform a 512-bit RSA private key operation. Cryptographic units support the authentication of communications from interaction agents, as well as allowing anonymous transactions. Cryptographic units can be configured, even as part of the CPU.
—Microcontrollers and/or equivalent processors can also be used. Other commercially available specialized cryptographic processors include: Broadcom's CryptoNetX and other Security Processors; nShield from nCipher, the Luna PCI series from SafeNet (eg 7100); 40 MHz Roadrunner 184 of 40 MHz from Semaphore Communications; Sun's Cryptographic Accelerators (eg, the PClede Accelerator 6000 Card and the Accelerator 500 Daughter Card); Via Nano Processor line (eg L2100, L2200, U2400), which is capable of performing 500+ MB/s of cryptographic instructions; 6868 33 MHz from VLSI Technology; and/or similar.
Memory Generally, any mechanism and/or modality that allows a processor to affect the storage and/or retrieval of information is considered memory.
1429. However, memory is a fungible resource and technology; thus, any number of memory modalities may be employed in place of or in accordance with each other.
It should be understood that the SNAP controller and/or a computer systematization may employ various forms of 1429 memory. For example, a computer systematization may be configured in which the operation of an on-chip CPU memory (e.g., registers ), RAM, ROM, and any other storage devices are provided via a paper punched card or paper punched tape mechanism; however, such a modality would result in an extremely slow rate of operation.
In a typical configuration, memory 1429 included a ROM 1406, a RAM 1405, and a storage device 1414. A storage device 1414 can be any conventional computer system storage.
Storage devices may include a drum; a magnetic disk drive (fixed and/or removable); an optical-magnetic unit; an optical drive (i.e. Blueray, CD ROM/RAM/writable (Ry/Rewritable (RW), DVD R/RW, HD DVD R/RW etc.); an array of devices (e.g. Redundant Array of Independent Disks (RAID)); solid state memory devices (USB memory, solid state drives (SSD), etc); other processor-readable storage media; and/or other similar devices.
Thus, a computer systematization usually requires and makes use of a memory.
Component Collection Memory 1429 may contain a collection of database and/or program and/or data components such as, but not limited to: operating system component(s) 1415 (operating system); information server component(s) 1416 (information server); user interface component(s) 1417 (user interface); web browser component(s) 1418 (web browser); database(s) 1419; mail server component(s) 1421; 1422 email client component(s); cryptographic server component(s) 1420 (cryptographic server); the SNAP(s) component 1435; and/or the like (ie collectively a component collection). These components can be stored and accessed from storage devices and/or from storage devices accessible via an interface bus.
Although unconventional program components such as those in the component collection typically are stored on a local storage device 1414, they may be loaded and/or stored further in memory such as: peripheral devices, RAM, facilities remote storage via a communications network, ROM, various forms of memory and/or the like.
Operating System The 1415 operating system component is an executable program component that facilitates the operation of the SNAP controller.
Typically, the operating system facilitates 1/O access, network interfaces, peripheral devices, storage devices, and/or the like. The operating system can be a secure, scalable and highly fault tolerant system such as: Apple Macintosh OS X (Server); AT&T Plan 9; BeOS; Unix and Unix-like system distributions (such as AT&T UNIX; Berkeley Software Distribution (BSD) variations such as FreeBSD, NetBSD, OpenBSD and/or similar; Linux distributions such as Red Hat, Ubuntu and/or similar); and/or similar operating systems. However, less secure and/or more limited operating systems can also be employed such as Apple Macintosh OS, IBM OS/2, Microsoft DOS, Microsoft Windows — 2000/2003/3.1/95/98/CE/Millenium/NT/Vista /XP (Server), Palm OS and/or similar. An operating system can communicate with and/or communicate with other components in a component collection, which includes itself and/or similar ones. More often, the operating system communicates with other program components, user interfaces, and/or the like. For example, the operating system may contain, communicate with, generate, obtain—and/or provide a program component, system, user, and/or data communications, requests, and/or responses. The operating system, once run by the CPU, may allow interaction with communications networks, data, I/O, peripheral devices, program components, memory, user input devices, and/or the like. The operating system may provide communications protocols that allow the SNAP controller to communicate with other entities over a 1413 communications network. Various communications protocols may be used by the SNAP controller as a subcarrier transport mechanism for interaction, such as such as, but not limited to: multicast, TCP/IP, UDP, unicast, and/or similar.
Information Server An Information Server 1416 component is a stored program component that is executed by a CPU. The information server may be a conventional Internet information server such as, but not limited to, the Apache Software Foundation's Apache, Microsoft's Internet Information Server and/or the like. The information server may allow the execution of program components through installations such as Active Server Page (ASP), ActiveX, (ANSI) (Objective-) C (++), CX and/or .NET, Interface scripts Passthrough (CGI), dynamic hypertext markup language (HTML) (D), FLASH, Java, JavaScript, Hands-on Extraction Reporting Language (PERL), Hypertext Pre-Processor (PHP), pipes, Python, protocol application (WAP), WebObjects and/or the like. The information server may support secure communications protocols such as, but not limited to, the File Transfer Protocol (FTP); Hypertext Transfer Protocol (HTTP); Secure Hypertext Transfer Protocol (HTTPS), Secure Socket Layer (SSL), messaging protocols (e.g., America Online (AOL) Instant Messenger (AIM), Application Exchange (APEX), ICQ, Bate - Internet Relay Chat (IRC), Microsoft Network Messenger Service (MSN), Instant Messaging Protocol (PRIM), Internet Session Initiation Protocol (IETF) Engineering Task Force (SIP), SIP for Instant Messaging and Presence Leveling Extensions (SIMPLE), Open XML-based Presence and Messaging Protocol (XMPP) (i.e., Jabber or Open Mobile Alliance Instant Messaging Presence Service (IMPS) (OMA)), Yahoo!'s Instant Messenger Service and/or the like.
The information server provides — results in the form of web pages to web browsers, and allows for the manipulated generation of web pages through interaction with other program components.
After a Domain Name System (DNS) resolution portion of an HTTP request is resolved to a particular information server, the information server resolves requests for information at specified locations in the SNAP controller based on the remainder of the request of HTTP.
For example, a request such as http://123.124.125.126/mylnformation.html may have the IP portion of the request "123.124.125.126" resolved through a DNS server to an information server at that IP address; that information server can in turn additionally parse the http request for the "/myinformation.html" portion of the request and resolve it to a location in memory that contains the information "mylnformation.html." In addition, protocols serving information may be employed over various ports, eg FTP communications over port 21 and/or the like.
An information server may communicate with other components and/or communicate with those other components in a component collection, which includes itself and/or similar installations.
More often, the information server communicates with the SNAP 1419 database, operating systems, other program components, user interfaces, web browsers, and/or the like.
Access to the SNAP database can be achieved through various database bridging mechanisms such as through written languages as enumerated below (e.g. CGI) and through communication channels between applications as enumerated below (e.g. , CORBA, WebObjects, etc.). Any requests for data through a web browser are parsed through the dot mechanism into appropriate grammars as required by SNAP.
In one embodiment, the information server would provide a web form accessible by a web browser.
Entries made in supplied fields on the web form are labeled as having been entered in the private
Í particular fields, and parsed as such.
The entered terms are then passed along with the field tags, which act to instruct the parser to generate targeted queries for appropriate fields and/or tables.
In one embodiment, the parser can generate standard SQL queries by instantiating a search string with the appropriate select/join commands based on labeled text entries, where the resulting command is provided over the bridge mechanism to SNAP as a query.
Upon generating query results from the query, the results are passed over the bridging mechanism, and can be parsed to format and generate a new results web page — through the bridging mechanism.
Such a new results web page is then provided to the information server, which can supply the same to the web browser on request.
Í In addition, an information server may contain, communicate, generate, obtain and/or provide a program component, system, user and/or data communications, requests and/or responses.
Í User interface Computer interfaces are in some ways similar to car operator interfaces.
Car operator interface elements such as steering wheels, gearshifts and speedometers make it easy to access, operate and display the car's status and features.
Computer interaction interface elements such as checkboxes, cursors, menus, scroll controls and windows (collectively and commonly called widgets) similarly facilitate access, capabilities, operation and display of data, status, operational resources and computer hardware.
Operator interfaces are commonly called user interfaces.
Graphical User Interfaces (GUIs) such as Apple Macintosh Operating System Aqua, IBM OS/2, Windows 2000/2003/3. i/95/98/CE/Millenium/NT/XP/Vista/7 (i.e. Aero) from Microsoft, X-Windows from Unix (e.g. which may include additional Unix GUI layers and libraries such as Environment K Desktop (KDE), mythTV and GNU Network Object Mode Environment (GNOME)), web interface libraries (e.g. ActiveX, AJAX, (D)HTML, FLASH, Java, JavaScript interface libraries , etc. such as, but not limited to, Dojo, jQuery(UI), MooTools, Prototype, script.aculo.us, SWFObject, Yahoo! User Interface, any of which can be used e) provide a line of basis and means of accessing and displaying information graphically to users.
A 1417 user interface component is a stored program component that is executed by a CPU.
The user interface may be a conventional graphical user interface as provided by, with, and/or on top of operating systems and/or operating environments such as already discussed.
The user interface may allow the display, execution, interaction, manipulation and/or operation of program components and/or system installations through graphical and/or textual installations.
The user interface provides a facility through which users can affect, interact with and/or operate a computer system.
A user interface may communicate with other components and/or communicate with such other components in a component collection, which includes itself and/or similar installations.
More often, the user interface communicates with operating systems, other program components, and/or the like.
The user interface may contain, communicate, generate, obtain and/or provide a program component, a system, a user and/or data communications, requests and/or responses. I
Web browser Í A 1418 Web browser component is a stored program component that is executed by a CPU.
The web browser can be a conventional hypertext viewer application such as Microsoft Internet Explorer or Netscape Navigator.
Secure web browsing can be provided with 128-bit (or greater) encryption through HTTPS, SSL and/or similar.
Web browsers that allow execution of program components through facilities such as ActiveX, AJAX, (D)HTML, FLASH, Java, JavaScript, web browser extension APIs (e.g. FireFox Extension, Safari and/or similar APIs) and/or similar.
Web browsers and similar information access tools can be integrated into PDAs, cell phones and/or other mobile devices.
A web browser may communicate with other components and/or communicate with such other components in a component collection, which includes itself and/or similar installations.
More often, the — web browser communicates with information servers, operating systems, integrated program components (eg extensions) and/or the like; for example, it may contain, communicate, generate, obtain and/or provide a program component, a system, a user and/or data communications, requests and/or responses.
Furthermore, in place of a web browser and an information server, a combined application can be developed to perform similar operations or both.
The combined application would similarly affect obtaining and providing information to users, user agents and/or the like from SNAP-enabled nodes.
The combined application may be negligible on systems that employ browsers from the
Web standards. i
Email Server
An e-mail server component 1421 is a stored program component that is executed by a CPU 1403. The e-mail server can be a
| 7181 conventional Internet mail server such as, but not limited to, sendmail, Microsoft Exchange and/or the like.
The mail server may allow execution of program components through installations such as ASP, ActiveX, (ANSI) (Objective-) C (++), CH and/or .NET, CGI scripts, Java, JavaScript, PERL, PHP, channels, Python, WebObjects and/or similar.
The mail server may support communications protocols such as, but not limited to: Internet Messaging Access Protocol (IMAP), Messaging Application Programming Interface (MAPI)/Microsoft Exchange, Mail Protocol ( POP3), Simple Mail Transfer Protocol (SMTP) and/or similar.
The email server may circulate, forward and process inbound and outbound email messages that have been sent, relayed and/or otherwise traversed through SNAP and/or into SNAP.
Access to SNAP email can be achieved through various APIs offered by individual web server components and/or the operating system.
In addition, an email server may contain, communicate, generate, obtain, and/or provide a program, system, user, and/or data communications, requests, information, and/or responses. ! E-mail Client Í An e-mail client component 1422 is a stored program component that is executed by a CPU 1403. The e-mail client can be a conventional e-mail viewing application such as Apple's Mail , Microsoft Entourage, Microsoft Outlook, Microsoft Outlook Express, Mozilla, Thunderbird and/or similar.
Email clients can support various transfer protocols such as: IMAP, Microsoft Exchange, POP3, SMTP and/or similar.
An email client can communicate with other components and communicate with such other components in a —component collection, which includes itself and/or similar installations.
More often, the email client communicates with email servers, operating systems, other email clients and/or the like; for example, it may contain, communicate, generate, obtain and/or provide a program component, system, user, and/or data communications, requests, information and/or responses.
Generally, the e-mail client provides a facility for composing and transmitting e-mail messages.
Cryptographic Server | A cryptographic server component 1420 is a stored program component that is executed by a CPU 1403, cryptographic processor 1426, cryptographic processor interface 1427, cryptographic processor device 1428, and/or the like.
The cryptographic processor interfaces will allow the dispatch of encryption and/or decryption requests by the cryptographic component; however, the cryptographic component can alternatively run in | a conventional CPU.
The cryptographic component allows encryption and/or decryption of the data provided. The cryptographic component allows for both symmetric and asymmetric encryption and/or decryption (e.g. Fairly Good Protection (PGP)) The cryptographic component may employ cryptographic techniques such as, but not limited to: digital certificates (e.g. X.509), digital signatures, double signatures, enveloping, password access protection, public key management and/or the like. The cryptographic component will facilitate numerous security protocols (encryption and/or decryption) such as, but not limited to: checksum, Data Encryption Standard (DES), Elliptic Curve Encryption (ECC), International Data Encryption Algorithm (IDEA), Message Digester 5 (MD5, which is a one-way hashing operation), passwords, Rivest Cipher (RC5), Rijndael, RSA (which is an Internet authentication and encryption system that uses an algorithm developed in 1977 by Ron Rivest, Adi Shamir and Leonard Adleman), Secure Hash Algorithm (SHA), Secure Socket Layer (SSL), Secure Hypertext Transfer Protocol (HTTPS) and/or the like. Employing such encryption security protocols, SNAP can encrypt all incoming and/or outgoing communications and can serve as a node within a virtual private network (VPN) with a wider communications network. The cryptographic component facilitates the "security authorization" process whereby access to a resource is inhibited by a security protocol where the cryptographic component provides authorized access to the secure resource. In addition, the cryptographic component can provide unique content identifiers, for example employing an MDS5 hash to obtain a unique signature for a digital audio file. A cryptographic component may communicate with other components and communicate with such other components in a component collection, which includes itself and/or similar installations. The cryptographic component supports encryption schemes that allow the secure transmission of information over a communications network to allow the SNAP component to engage in secure transactions if desired. The cryptographic component facilitates secure access to resources in SNAP and facilitates access to secure resources in remote systems; that is, it can act as a client and/or server of secure resources. More often, the cryptographic component communicates with information servers, operating systems, other program components, and/or the like. The cryptographic component may contain, communicate, generate, obtain and/or provide a program, system, user and/or data communications, requests and/or responses component.
The SNAP Database The SNAP 1419 database component can be embedded in a database and the data stored in it. The database is a stored program component, which is executed by the CPU; the portion of the stored program component that configures the CPU to process the stored data. The database can be a secure, scalable, and fault-tolerant conventional database such as Oracle or Sybase. Relational databases are an S extension of a flat file. Relational databases consist of a series of related tables. The tables are interconnected through a key field. The use of the key field allows the combination of tables by indexing against the key field; that is, key fields act as dimensional pivot points to combine information from multiple tables. Relationships generally identify links maintained between tables by matching primary keys. Primary keys represent fields that uniquely identify the rows of a table in a relational database. More precisely, they uniquely identify the rows of a table on the "one" side of a one-to-many relationship.
Alternatively, the SNAP database can be deployed using various standard data structures, such as an array, hash, (linked) list, struct, structured text file (e.g. XML), table, and/or similar. Such data structures can be stored in memory and/or in (structured) files. In another alternative, an object-oriented database can be used, such as Frontier, Objesctstore, Poet, Zope and/or similar. Object databases can include multiple object collections that are grouped and/or connected together through common attributes; they can be related to other object collections through some common attributes. Object-oriented databases perform similarly to relational databases with the exception that objects are not just pieces of data but can have other kinds of capabilities within a given object. If the SNAP —database is deployed as a data structure, the use of the SNAP 1419 database can be integrated into another component such as the SNAP 1435 component. In addition, the database can be deployed with a mixture of data structures, objects and relational structures. Databases can be consolidated and/or distributed in countless variations through standard data processing techniques. Portions of the databases, eg tables, can be exported and/or imported and thus decentralized and/or integrated.
In one embodiment, the database component 1419 includes several tables 1419a-o. A Users table 1419a may include fields such as, but not limited to: user id, ssn, dob, first name, last name, age, state, address firstline, address secondline, zipcode, devices list, contact info, contact type, alt contact info, alt contact type and/or similar. The Users table can support and/or track multiple entity accounts in a SNAP. A 1419b Devices table may include fields such as, but not limited to: device ID, device name, device IP, device MAC, device type, device model, device version, device OS, device apps list, device securekey, wallet app installed flag and/or similar.
A 14190 Applications table may include fields such as, but not limited to: app ID, app name, app type, app dependencies, and/or similar.
A 1419d Accounts table can include fields such as, but not limited to: account number, account. security code, account name, issuer acquirer flag, issuer name, acquirer name, account address, routing number, access API call, linked wallets list and/or similar.
A Merchants table 1419e may include fields such as, but not limited to: merchant id, merchant name, merchant address, ip address, mac address, auth key, port num, security settings list, and/or similar.
A 1419f issuer table may include fields such as, but not limited to: issuer id, issuer name, issuer address, ip address, mac address, auth key, port num, security settings list and/or similar.
An Acquirers table 1419g can include fields such as, but not limited to: account firstname, account lastname, account type, account num, account balance list, bilingaddress linei, —billingaddress line2, billing. zipcode, billing. state, shipping. preferences, shippingaddress linei, shippingaddress line2, shipping zipcode, shipping state and/or similar.
A 1419b Payment Tickets table may include fields such as, but not limited to: gateway ID, IP gateway, MAC gateway, secure key gateway, access list gateway, API call list gateway, gateway services list, and/or the like.
A Transactions table 14191 can include fields such as, but not limited to: order id, user id, timestamp, transaction cost, purchase details list, num products, products list, product type, product params list, product title, product summary, quantity , user id, client id, client ip, client type, client model, — operating system, os version, app installed flag, userid, account firsthame, account lasthame, account type, — account num, account priority account ratio, billingaddress linei, Dbillingaddress line2, billing. zipcode, billing. state, shipping. preferences, shippingaddress linei, shippingaddress line2, shipping zZipcode, shipping state, merchant id, merchant name, merchant. auth key and/or similar.
A 1419j Batch table can include fields such as, but not limited to: batch id, transaction id list, timestamp list, cleared flag list, clearance trigger settings and/or similar.
A 1419k Ledger table can include fields such as, but not limited to: request id, timestamp, deposit amount, batch id, transaction id, clear flag, deposit account, transaction summary, payor name, payor account and/or similar.
A 14191 Products table can include fields such as, but not limited to: product ID, product title, product attributes list, product price, tax info list related products list, offers list, discounts list, rewards list, merchants list, merchant availability list and/or similar.
A 1419m Offers table may include fields such as, but not limited to: offer ID, offer title, offer attributes list, offer price,
offer expiration, related products — list discounts list rewards list “merchants list, merchant availability list and/or similar. A 1419n Behavior Data table can include fields such as, but not limited to: user id, timestamp, activity type, activity location, activity attribute list, activity attribute values list, and/or similar. A 14190 Analytics table may include fields such as, but not limited to: report id, user jd, report type, report algorithm id, report destination address and/or similar.
In one embodiment, the SNAP database may interact with other database systems. For example, employing a distributed database system, queries and data accesses through the SNAP lookup component can treat the combination of the SNAP database, an integrated data security layer database as a single entity. of database.
In one embodiment, the user programs may contain various primitive user interfaces, which may serve to update the SNAP. In addition, multiple accounts may require custom database tables depending on the environments and types of clients that SNAP may need to serve. It should be noted that any unique fields can be projected as a key field. In an alternative embodiment, these tables were decentralized into their own databases and their respective database controllers (ie individual database controllers for each of the above tables). By employing standard data processing techniques, it is possible to further distribute the databases over the various computer systematizations and/or storage devices. Similarly, configurations of decentralized database controllers can be varied by consolidating and/or distributing the various 1419a-0 database components. SNAP can be configured to keep track of various settings, entries and parameters through database controllers.
The SNAP database may communicate with other components and communicate with such other components in a component collection, which includes itself and/or similar installations. More often, SNAP databases communicate with the SNAP component, other program components, and/or the like.
The database may contain, retain and provide information regarding other nodes and data.
The SNAPs The SNAP component 1435 is a stored program component that is executed by a CPU. In one embodiment, the SNAP component incorporates any and all combinations of aspects of SNAP discussed in the preceding Figures. As such, SNAP affects accessing, obtaining and providing information, services, transactions and/or the like over various communications networks.
The SNAP component can transform merchant/product Quick Response codes generated in real-time via SNAPs components into purchase notifications of e-wallet card based transaction purchase and/or similar and the use of SNAP. In one embodiment, the SNAP component 1435 receives inputs (e.g., a checkout entry 411; product data 414; payment entry 419; issuer server data 423; user data 427a-n; and/or similar), and transforms inputs via SNAP components (e.g. SMPE 1441; QORCP 1442; and/or similar) into outputs (e.g. a QR payment code 417; a card authorization request 421; a authorization response 429a-n; an authorization success message 433a-b; attached batch data 435; a purchase receipt 436; and/or the like).
The SNAP component that allows access to information between nodes can be developed using standard development languages and tools such as, but not limited to: Apache components, Assembly, ActiveX, binary executables, (ANSI) (Objective- ) C (++), C%4 and/or .NET, database adapters, CGI scripts, Java, JavaScript, mapping tools, object-oriented and procedural development tools, PERL, PHP, Python, shell scripts, SQL commands, web application server extensions, libraries and web development environments (e.g. Microsoft ActiveX; Adobe AIR, FLEX &FLASH;AJAX;(DIHTML; Dojo, Java; JavaScript; jQuery(UI) ); MooTols; Prototype; script.aculo.us; Simple Object Access Protocol (SOAP); SWFObject; Yahoo! User Interface; and/or the like), WebObjects and/or the like. SNAP employs a cryptographic server to encrypt and decrypt unications. The SNAP component may communicate with other components and communicate with such other components in a component collection, which includes itself and/or similar installations. More often, the SNAP component communicates with the SNAP database, operating systems, other program components, and/or the like. SNAP may contain, communicate with, generate, obtain and/or provide a program component, system, user and/or data communications, requests and/or responses.
Distributed SNAPs The structure and/or operation of any of the SNAP node controller components can be combined, consolidated, and/or distributed in a number of ways to facilitate development and/or installation. Similarly, component collection can be combined in any number of ways to facilitate installation and development. To achieve this, it is possible to integrate the components into a common code base or an installation that can dynamically load the components on demand in an integrated manner.
Component collection can be consolidated and/or distributed into countless variations through data processing techniques and/or standard development. Multiple instances of any of the program components in the program component collection can be instantiated on a single node and/or across numerous nodes to improve performance through load balancing and/or data processing techniques. Furthermore, single instances can also be distributed across multiple controllers and/or storage devices; for example, databases. All program component instances and controllers that function accordingly can do so through standard data processing communication techniques. The configuration of the SNAP controller will depend on the context of the system installation. Factors such as, but not limited to, budget, capacity, location and/or use of underlying hardware resources may affect installation and configuration requirements. Regardless of whether the configuration results in more integrated and/or consolidated program components, results in a more distributed series of program components, and/or results in some combination of a consolidated and distributed configuration, data can be communicated, obtained, and/or or provided. Instances of components consolidated into a common code base from the program component collection can communicate, obtain and/or provide data. This can be achieved through data processing communication techniques between applications such as, but not limited to: referencing data (e.g. bookmarks), sending internal messages, variable communication per object instance, shared memory space, variable pass and/or the like.
If the components of the component collection are discrete, separate and/or external to each other, then communication, obtaining and/or providing data with and/or to other components can be achieved through data processing communication techniques between applications. such as, but not limited to: passing Application Program Interfaces (API) information; Component Object Model ((DJCOM) (distributed), Object Embedding and Binding ((D)JOLE) (Distributed) and/or similar), Common Object Request Agent (CORBA) Architecture, application program interfaces Jini remote and local, JavaScript Object Notation (JSON), Remote Method Invocation (RMI), SOAP, process channels, shared files and/or the like. Messages sent between discrete component components for interapplication communication or within memory spaces of a single component for interapplication communication can be facilitated by creating and parsing a grammar. A grammar can be developed using development tools such as lex, yacc, XML and/or similar, which allow for parsing and grammar generation capabilities, which in turn can form the basis of communication messages within the components and between components.
For example, a grammar can be arranged to recognize the tokens of an HTTP post command, for example: w3c -post http: //... Value where Value1 is distinguished as a parameter since "http:/ /" is part of the grammatical syntax, and what follows is considered part of the postage value. Similarly, with such a grammar, a variable "Value1" can be inserted into an "http://" post command and then sent. The grammatical syntax itself can be presented as structured data that is interpreted and/or otherwise used to generate the parsing engine (eg, a syntax description text file as processed by lex, yacc, etc.). Furthermore, once the parsing engine is generated and/or instantiated, it can process and/or parse structured data such as, but not limited to: character-delineated text (e.g., tab), HTML, structured text streams, XML and/or similar structured data. In another embodiment, the data processing protocols within applications themselves may have built-in and/or readily available parsers (e.g. JSON, SOAP, and/or similar parsers) that can be employed to parse (e.g., communications ) the data. Furthermore, parsing grammar can be used in addition to message parsing, but can also be used to parse: databases, data collections, data stores, structured data, and/or the like. Again, the desired configuration will depend on the context, environment, and system installation requirements.
For example, in some deployments, the SNAP Controller may run a PHP Script that deploys a Security Sockets Layer ("SSL") socket server through the information server, which detects incoming communications on a server port. to which a client can send data, for example, data encoded in JSON format. Upon identifying an incoming communication, the PHP script can read the incoming message from the client device, parse the incoming JSON-encoded text data to extract information from the JSON-encoded text data in the PHP script variables, and stores data (eg, customer identification information, etc.) and/or information extracted from a relational database accessible using Structured Query Language ("SQL").
An example listing, written substantially in the form of PHP/SQL commands, to accept JSON-encoded input data from a client device over an SSL connection, parse the data to extract variables, and store the data in a database, is provided below: < PHP | header(' Content-Type : text/plain'); // set ip address and port to listen to for incoming data $address = <1>192.168.0.100'; $port = 255; 1/ create a server-side SSL socket, listen for/accept incoming communication $sock = socket create (AF INET, SOCK STREAM, 0); socket bind ($sock, $address, $port) or die ( 'Could not bind to address"); socket listen ($sock) ; S$client = socket accept ($sock) ; | 1/ read input data from client device in 1024 byte blocks until end of message do ( $input =""; S$input = socket read ( $client, 1024); $data .= $input; | ) while ($ input = "); 1/ parse data to extract variables S$obj = j son decode( $data, true) ; // store input data in a database mysql connect( "201.408.185.132 " , SDBserver , Spassword) ; // access database server mysql select ("CLIENT DB . SQL" ); // select database to append mysql. query("INSERT INTO UserTable (transmission) VALUES ($data)"); // add data to UserTable table in a CLIENT database mysql close ("CLIENT DB.
SQL") ; // close connection to database > Furthermore, the following resources can be used to provide exemplary modalities regarding SOAP parsing deployment: http:/www.xav.com/perl/site/lib/SOAP/Parser .html http://publib.boulder.ibm.com/infocenter/tivihelp/v2ri/index.jsp topic=/com.ibm.IBMDI.docireferenceguide295.htm and other analysis deployments: http://publib.boulder. ibm.com/infocenter/tivihelp/v2rlfindex.jsp topic=/com.ibm.IBMDI.doc/referenceguide259.htm All of which are expressly incorporated herein by reference.
|
80/81 In order to address various issues and improve technique, the entirety of this application for SNAP MOBILE PAYMENT APPARATUSES, METHODS AND SYSTEMS payment methods and devices (including the Title Page, Title, Headings, Field, Background, Table of Contents, Brief Description of the Drawings, Detailed Description, Claims, Summary, Figures, Annexes and/or others) show by way of illustration the various modalities in which the claimed innovations can be put into practice.
Order benefits and features are only a representative sample of modalities and are not comprehensive and/or exclusive.
They are presented only to aid in the understanding and teaching of the claimed principles.
It should be understood that they are not representative of all claimed innovations.
As such, certain aspects of the disclosure have not been discussed in the present invention.
These alternative modalities may not have been presented for a specific portion of the innovations, or these additional undescribed alternative modalities may be available so that a portion is not considered a negation of those alternative modalities.
It will be appreciated that many of these undescribed embodiments embody the same principles as the innovations and others are equivalent.
Thus, it must be understood that other modalities can be used and topological, structural, functional, logical, operational, and/or organizational modifications can be made without departing from the scope and/or spirit of the disclosure.
As such, all examples and/or embodiments are assessed as non-limiting throughout this disclosure.
Also, no inferences should be drawn regarding those embodiments discussed in the present invention with respect to those not discussed, unless the same is so for purposes of space reduction and repetition.
For example, it should be understood that the logical and/or topological structure of any combination of any program components (a component collection), other components, and/or any feature sets present as described in the Figures and/or throughout disclosure are not limited to a fixed fixing order and/or arrangement, but rather, any order disclosed is exemplary and all equivalents, regardless of order, are contemplated by the disclosure.
Furthermore, it should be understood that such resources are not limited to running in series, but rather any number of threads, processes, services, servers and/or the like that can run asynchronously, concurrently, in parallel, simultaneously, synchronously and/or the like are contemplated by the disclosure.
As such, some of these features may be mutually contradictory in that they cannot be simultaneously presented in a single modality.
Similarly, some features are applicable to one aspect of the innovations and not applicable to others.
Additionally, the disclosure includes other currently unclaimed innovations.
The claimant reserves all rights relating to such currently unclaimed innovations, which include the right to claim such innovations, additional archive applications, continuations, continuations in part, divisions and/or similar thereto.
As such, it should be understood that the advantages, modalities, examples, functional, resource, logical, operational, organizational, structural, topological and/or —other aspects of the disclosure should not be considered limitations on disclosure as defined by the claims or limitations on equivalents to the claims.
It should be understood that depending on the particular needs and/or characteristics of an individual and/or corporate SNAP user, database configuration and/or relational model, data type, data transmission and/or network structure, syntax structure and/or similar, several SNAP modalities can be implemented because they allow a great deal of flexibility and customization.
For example, aspects of SNAP can be adapted for restaurants, online consumption, physical (non-virtual) store consumption, secure information processing, mid-care information systems and/or the like.
While various SNAP modalities and discussions have been directed towards electronic purchase transactions, however, it should be understood that the modalities described in the present invention can be easily configured and/or customized for a wide variety of other applications and/or deployments.
权利要求:
Claims (27)
[1]
1. Computer-implemented method of snap payment characterized in that it comprises: obtaining, on a user device, user input to initiate a purchase transaction; acquiring an image frame by means of an image acquisition device operatively connected to the user device; identify a payment code shown in the purchased image frame; generate, through the user device, a purchase transaction request using the identified payment code; provide the purchase transaction request for payment processing; and obtain a purchase receipt for the purchase transaction.
[2]
2. Method according to claim 1, characterized in that it comprises: providing an image of the payment code for processing the purchase transaction.
[3]
3. Method, according to claim 1, characterized in that it comprises: acquiring a video that includes the image frame through the image acquisition device included in the user's mobile device; extract the image frame from the acquired video; and analyzing the image frame to determine whether the image frame includes the displayed payment code.
[4]
4. Method according to claim 1, characterized in that the user device is a mobile device.
[5]
5. Method according to claim 1, characterized in that the user input is a touchscreen gesture on a touchscreen operatively connected to the user device.
[6]
6. Method according to claim 1, characterized in that the payment code is a one-dimensional bar code.
[7]
7. Method according to claim 1, characterized in that the payment code is a two-dimensional bar code.
[8]
8. Method according to claim 7, characterized in that the payment code is a Quick Response (QR) code.
[9]
9. Method, according to claim 1, characterized in that it comprises: extracting purchase session data from the payment code; and
, 2/4 . where the purchase transaction request is generated, via the user's mobile device, using the extracted purchase session data.
[10]
10. Method according to claim 9, characterized in that the purchase session data varies based on user consumption activity with a merchant.
[11]
11. Method according to claim 10, characterized in that the merchant is an online merchant.
[12]
12. Method according to claim 1, characterized in that it further comprises: providing a portion of the acquired image frame which includes displaying the payment code to a server; and obtaining purchase session data from the server in response to providing the portion of the acquired image frame.
[13]
13. Method according to claim 9, characterized in that the purchase session data includes a merchant identifier and a session identifier for a user consumption session with a merchant associated with the merchant identifier.
[14]
14. Method according to claim 12, characterized in that the purchase session data includes a merchant identifier, and a session identifier for a user consumption session with a merchant associated with the merchant identifier.
[15]
15. Method according to claim 1, characterized in that the session identifier is configured to function as a token parameter in a uniform resource locator for data about the user's consumption session with the merchant.
[16]
16. Method according to claim 14, characterized in that the session identifier is configured to serve as a token parameter in a uniform resource locator for data in the user's consumption session with the merchant.
[17]
17. Method, according to claim 1, characterized in that it additionally comprises: obtaining, for payment processing, payment information associated with a virtual wallet account; where the generated purchase transaction request includes the payment information associated with the e-wallet account.
[18]
. 3/4 . 18. Method according to claim 17, characterized in that the payment information includes a dynamically generated card verification value code.
[19]
19. Method according to claim 18, characterized in that it further comprises: providing a dynamically generated card verification value code request to a server; and getting the dynamically generated card verification value code from the server in response to providing the request.
[20]
20. Method according to claim 19, characterized in that the dynamically generated card verification value has an expiration time.
[21]
21. Method according to claim 19, characterized in that the dynamically generated card verification value is specific to a user consumption session with a merchant.
[22]
22. Method according to claim 1, characterized in that the payment code shown in the acquired image frame is acquired from a display of a media device, and encodes data to purchase media content on demand.
[23]
23. Method according to claim 22, characterized in that the media device is a television.
[24]
24. Method according to claim 23, characterized in that the television is part of an in-flight entertainment system.
[25]
25. Method according to claim 22, characterized in that the media device displays a web page.
[26]
26. Snap payment computer implemented system characterized in that it comprises: a processor; and a memory arranged in communication with the processor and which stores processor-executable instructions for: obtaining, from a user device, user input to initiate a purchase transaction; acquiring an image frame by means of an image acquisition device operatively connected to the user device; identify a payment code shown in the purchased image frame; generate, through the user device, a purchase transaction request using the identified payment code; provide the purchase transaction request for payment processing; and
: 4/4 . obtain a purchase receipt for the purchase transaction.
[27]
27. A tangible computer-readable medium characterized by the fact that it stores computer-executable snap payment instructions to: obtain, on a user device, user input to initiate a purchase transaction; acquiring an image frame through an image acquisition device operatively connected to the user device; identify a payment code shown in the purchased image frame; generate, through the user's device, a purchase transaction request — with the identified payment code; provide the purchase transaction request for payment processing; and obtain a purchase receipt for the purchase transaction.
类似技术:
公开号 | 公开日 | 专利标题
AU2018204759B2|2020-03-12|Snap mobile payment apparatuses, methods and systems
US10482398B2|2019-11-19|Secure anonymous transaction apparatuses, methods and systems
US10586227B2|2020-03-10|Snap mobile payment apparatuses, methods and systems
US11010753B2|2021-05-18|Electronic wallet checkout platform apparatuses, methods and systems
US10853797B2|2020-12-01|Cloud-based virtual wallet NFC apparatuses, methods and systems
US8577803B2|2013-11-05|Virtual wallet card selection apparatuses, methods and systems
RU2602394C2|2016-11-20|Payment privacy tokenisation apparatus, methods and systems
AU2017202809A1|2017-05-18|Social media payment platform apparatuses, methods and systems
BR112013021057A2|2020-11-10|universal electronic payment devices, methods and systems
WO2013009660A1|2013-01-17|Bidirectional bandwidth reducing notifications and targeted incentive platform apparatuses, methods and systems
同族专利:
公开号 | 公开日
WO2012112822A3|2012-10-18|
US20140197234A1|2014-07-17|
CN109118199A|2019-01-01|
AU2016204018A1|2016-07-07|
CN106803175B|2021-07-30|
CN106803175A|2017-06-06|
AU2012217606A1|2013-05-09|
SG193481A1|2013-10-30|
US20190034921A1|2019-01-31|
CN103765453B|2018-08-14|
CN103765453A|2014-04-30|
WO2012112822A2|2012-08-23|
AU2018204759B2|2020-03-12|
AU2018204759A1|2018-07-19|
US20120209749A1|2012-08-16|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题

US4896363A|1987-05-28|1990-01-23|Thumbscan, Inc.|Apparatus and method for matching image characteristics such as fingerprint minutiae|
US5221838A|1990-12-24|1993-06-22|Motorola, Inc.|Electronic wallet|
US5590038A|1994-06-20|1996-12-31|Pitroda; Satyan G.|Universal electronic transaction card including receipt storage and system and methods of conducting electronic transactions|
US6925439B1|1994-06-20|2005-08-02|C-Sam, Inc.|Device, system and methods of conducting paperless transactions|
US5640193A|1994-08-15|1997-06-17|Lucent Technologies Inc.|Multimedia service access by reading marks on an object|
US5748737A|1994-11-14|1998-05-05|Daggar; Robert N.|Multimedia electronic wallet with generic card|
US6439345B1|1996-05-22|2002-08-27|Sears, Roebuck And Co.|Item pick-up system|
US5892838A|1996-06-11|1999-04-06|Minnesota Mining And Manufacturing Company|Biometric recognition using a classification neural network|
US20020004783A1|1997-11-12|2002-01-10|Cris T. Paltenghe|Virtual wallet system|
US6195447B1|1998-01-16|2001-02-27|Lucent Technologies Inc.|System and method for fingerprint data verification|
US6160903A|1998-04-24|2000-12-12|Dew Engineering And Development Limited|Method of providing secure user access|
US6161130A|1998-06-23|2000-12-12|Microsoft Corporation|Technique which utilizes a probabilistic classifier to detect "junk" e-mail by automatically updating a training and re-training the classifier based on the updated training set|
US7540012B1|1999-06-08|2009-05-26|International Business Machines Corporation|Video on demand configuring, controlling and maintaining|
KR20010055426A|1999-12-10|2001-07-04|구홍식|System For And Method of Electronic Settlement Utilizing Fingerprints|
JP2001344544A|2000-06-02|2001-12-14|Koji Sugano|Portable terminal and electronic clearing system using the same|
US7680324B2|2000-11-06|2010-03-16|Evryx Technologies, Inc.|Use of image-derived information as search criteria for internet and other search engines|
US7174292B2|2002-05-20|2007-02-06|Microsoft Corporation|Method of determining uncertainty associated with acoustic distortion-based noise reduction|
US7784684B2|2002-08-08|2010-08-31|Fujitsu Limited|Wireless computer wallet for physical point of sale transactions|
US7228011B1|2003-02-28|2007-06-05|L-I Identity Solutions, Inc.|System and method for issuing a security unit after determining eligibility by image recognition|
US7664733B2|2003-04-11|2010-02-16|Ricoh Company, Ltd.|Techniques for performing operations on a source symbolic document|
US7156311B2|2003-07-16|2007-01-02|Scanbuy, Inc.|System and method for decoding and analyzing barcodes using a mobile device|
CN1922623A|2004-02-17|2007-02-28|富士通株式会社|Wireless wallet|
US20060020542A1|2004-07-21|2006-01-26|Litle Thomas J|Method and system for processing financial transactions|
US8489583B2|2004-10-01|2013-07-16|Ricoh Company, Ltd.|Techniques for retrieving documents using an image capture device|
US20080091616A1|2004-12-15|2008-04-17|Erich Helwin|Communication System And Method Using Visual Interfaces For Mobile Transactions|
CN1841425A|2005-03-31|2006-10-04|华为技术有限公司|Mobile terminal shopping method and system thereof|
US20060282332A1|2005-04-28|2006-12-14|Pfleging Gerald W|Method for transmitting a wireless receipt to a personal digital device|
US20070162350A1|2005-11-23|2007-07-12|Friedman Paul R|Method and apparatus for retrieving remote data based on local indicia|
US7720436B2|2006-01-09|2010-05-18|Nokia Corporation|Displaying network objects in mobile devices based on geolocation|
CN101025806B|2006-02-20|2012-09-05|普天信息技术研究院|Method of fee payment via mobile communication terminal|
FR2900481B1|2006-04-27|2009-04-24|Arjowiggins Soc Par Actions Si|SYSTEM FOR READING AT LEAST ONE BARCODE|
US8095602B1|2006-05-30|2012-01-10|Avaya Inc.|Spam whitelisting for recent sites|
JP2007328549A|2006-06-07|2007-12-20|Inax Corp|Purchase price payment method for commodity/service|
US20080082424A1|2006-09-29|2008-04-03|Matthew Walton|System for optimizing pickup of goods by a purchaser from a vendor using location-based advertising|
CN1928907A|2006-10-13|2007-03-14|钟杨|Method, system and device for transaction payment using mobile terminal equipment|
US7963441B2|2007-03-26|2011-06-21|Sears Brands, Llc|System and method for providing self service checkout and product delivery using a mobile device|
US8725638B2|2007-05-18|2014-05-13|Visa U.S.A. Inc.|Method and system for payment authorization and card presentation using pre-issued identities|
CN101388125A|2007-09-12|2009-03-18|上海亿动信息技术有限公司|System and method for controlling sale of dispenser by user terminal|
JP2009176259A|2008-01-24|2009-08-06|Katsumi Tanaka|Automatic transaction settlement system for unattended parking lot using qr code|
CN101231727A|2008-02-20|2008-07-30|深圳矽感科技有限公司|Electric cheque paying method and implementing system thereof|
US20090254479A1|2008-04-02|2009-10-08|Pharris Dennis J|Transaction server configured to authorize payment transactions using mobile telephone devices|
US8176554B1|2008-05-30|2012-05-08|Symantec Corporation|Malware detection through symbol whitelisting|
CN101334876A|2008-07-24|2008-12-31|江苏丹森资讯顾问有限公司|Method for using mobile score for exchanging transaction information circulation|
US20100211452A1|2009-02-16|2010-08-19|D Angelo Giovanni|Digital voucher processing system|
CN101719255A|2009-12-01|2010-06-02|深圳市隽炜电子信息有限公司|System and method for electronic coupons based on non-contact handheld payment terminal|
US8380177B2|2010-04-09|2013-02-19|Paydiant, Inc.|Mobile phone payment processing methods and systems|
CN101840550A|2010-05-17|2010-09-22|李黎明|Method for realizing purposes of generating and paying bill on site|
EP2577588A4|2010-05-27|2014-04-02|Mastercard International Inc|Methods, systems and computer readable media for utilizing a consumer opt-in management system|
CN101958025B|2010-09-06|2014-06-18|广东铭鸿数据有限公司|Mobile phone payment method using barcode technology, and on-site payment terminal and system|
US9760943B2|2010-09-17|2017-09-12|Mastercard International Incorporated|Methods, systems, and computer readable media for preparing and delivering an ordered product upon detecting a customer presence|
US11055693B2|2010-09-30|2021-07-06|Mastercard International Incorporated|Methods, systems and computer readable media for issuing and redeeming co-branded electronic certificates|
US20120158589A1|2010-12-15|2012-06-21|Edward Katzin|Social Media Payment Platform Apparatuses, Methods and Systems|
US20120203695A1|2011-02-09|2012-08-09|American Express Travel Related Services Company, Inc.|Systems and methods for facilitating secure transactions|
US20130204776A1|2012-02-08|2013-08-08|F. Charles King|E-commerce Payment and Delivery System and Method|US9342829B2|2002-10-01|2016-05-17|Andrew H B Zhou|Systems and methods for mobile application, wearable application, transactional messaging, calling, digital multimedia capture and payment transactions|
US9824349B2|2002-10-01|2017-11-21|World Award Academy|Facilitating mobile device payments using product code scanning|
WO2018154525A1|2017-02-24|2018-08-30|Zhou Tiger Tian Ge|Facilitating mobile device payments using product code scanning|
US20110145082A1|2009-12-16|2011-06-16|Ayman Hammad|Merchant alerts incorporating receipt data|
US8429048B2|2009-12-28|2013-04-23|Visa International Service Association|System and method for processing payment transaction receipts|
US8849706B2|2011-04-20|2014-09-30|Christine King|Method for updating prices while shopping|
US10223730B2|2011-09-23|2019-03-05|Visa International Service Association|E-wallet store injection search apparatuses, methods and systems|
AU2012220669A1|2011-02-22|2013-05-02|Visa International Service Association|Universal electronic payment apparatuses, methods and systems|
US10586227B2|2011-02-16|2020-03-10|Visa International Service Association|Snap mobile payment apparatuses, methods and systems|
US20120215700A1|2011-02-18|2012-08-23|Vivonet, Inc.|Payment systems and methods using mobile computing devices|
AU2013214801B2|2012-02-02|2018-06-21|Visa International Service Association|Multi-source, multi-dimensional, cross-entity, multimedia database platform apparatuses, methods and systems|
US8775263B2|2011-03-29|2014-07-08|@Pay Ip Holdings Llc|System and method for email-based e-commerce|
US20120300087A1|2011-05-24|2012-11-29|Shore Jane E|System and method for receiving and publishing product interest|
US8538845B2|2011-06-03|2013-09-17|Mozido, Llc|Monetary transaction system|
US9582598B2|2011-07-05|2017-02-28|Visa International Service Association|Hybrid applications utilizing distributed models and views apparatuses, methods and systems|
US10121129B2|2011-07-05|2018-11-06|Visa International Service Association|Electronic wallet checkout platform apparatuses, methods and systems|
US20130013589A1|2011-07-07|2013-01-10|Todd Stevenson|Customer Relationship Management System|
US8985442B1|2011-07-18|2015-03-24|Tiger T G Zhou|One-touch payment using haptic control via a messaging and calling multimedia system on mobile device and wearable device, currency token interface, point of sale device, and electronic payment card|
US9047600B2|2011-07-18|2015-06-02|Andrew H B Zhou|Mobile and wearable device payments via free cross-platform messaging service, free voice over internet protocol communication, free over-the-top content communication, and universal digital mobile and wearable device currency faces|
US9153074B2|2011-07-18|2015-10-06|Dylan T X Zhou|Wearable augmented reality eyeglass communication device including mobile phone and mobile computing via virtual touch screen gesture control and neuron command|
US9367841B2|2011-07-18|2016-06-14|Tiger T G Zhou|Facilitating mobile device payments using product code scanning|
KR101184865B1|2011-07-20|2012-09-20|주식회사 하렉스인포텍|Complex payment system using a portable terminal and the method thereof|
KR20130011791A|2011-07-22|2013-01-30|한국전자통신연구원|Apparatus and method for dynamic multi-dimensional codes with time and visual recognition information|
US9355393B2|2011-08-18|2016-05-31|Visa International Service Association|Multi-directional wallet connector apparatuses, methods and systems|
US9710807B2|2011-08-18|2017-07-18|Visa International Service Association|Third-party value added wallet features and interfaces apparatuses, methods and systems|
US10825001B2|2011-08-18|2020-11-03|Visa International Service Association|Multi-directional wallet connector apparatuses, methods and systems|
US10242358B2|2011-08-18|2019-03-26|Visa International Service Association|Remote decoupled application persistent state apparatuses, methods and systems|
US20130054413A1|2011-08-22|2013-02-28|American Express Travel Related Services Company Inc.|Methods and systems for contactless payments|
US8714439B2|2011-08-22|2014-05-06|American Express Travel Related Services Company, Inc.|Methods and systems for contactless payments at a merchant|
US9129277B2|2011-08-30|2015-09-08|Digimarc Corporation|Methods and arrangements for identifying objects|
CA2888153C|2012-10-19|2021-04-27|Digimarc Corporation|Methods and arrangements for identifying objects|
US9367770B2|2011-08-30|2016-06-14|Digimarc Corporation|Methods and arrangements for identifying objects|
US9524499B2|2011-09-28|2016-12-20|Paypal, Inc.|Systems, methods, and computer program products providing electronic communication during transactions|
US9002322B2|2011-09-29|2015-04-07|Apple Inc.|Authentication with secondary approver|
US8769624B2|2011-09-29|2014-07-01|Apple Inc.|Access control utilizing indirect authentication|
US10320951B2|2011-10-31|2019-06-11|Hurricane Electric|Systems and methods for establishing a virtual local area network|
JP2013109502A|2011-11-18|2013-06-06|Internatl Business Mach Corp <Ibm>|Pos interfaceemulator|
US9208488B2|2011-11-21|2015-12-08|Mozido, Inc.|Using a mobile wallet infrastructure to support multiple mobile wallet providers|
US10438196B2|2011-11-21|2019-10-08|Mozido, Inc.|Using a mobile wallet infrastructure to support multiple mobile wallet providers|
US9292846B2|2011-11-28|2016-03-22|Mocapay, Inc.|Mobile device authorization system for concurrent submission of multiple tender types|
US20130151358A1|2011-12-07|2013-06-13|Harsha Ramalingam|Network-accessible Point-of-sale Device Instance|
US9721282B2|2011-12-07|2017-08-01|Amazon Technologies, Inc.|Merchant verification of in-person electronic transactions|
US20130159080A1|2011-12-17|2013-06-20|LaShou Group INC.|System and Method for Mobile Device-Based Smart Wallet|
US8935777B2|2012-02-17|2015-01-13|Ebay Inc.|Login using QR code|
US20130218768A1|2012-02-21|2013-08-22|Mike Leber|Systems and Methods for Facilitating Secured Financial Transactions|
US9141988B2|2012-02-22|2015-09-22|Ebay, Inc.|Systems and methods to provide search results based on time to obtain|
WO2013130716A1|2012-02-29|2013-09-06|Patel Upen|System and method to manage information for conducting secure transactions|
US20150170260A1|2012-02-29|2015-06-18|Google Inc.|Methods and Systems for Using a Mobile Device to Visualize a Three-Dimensional Physical Object Placed Within a Three-Dimensional Environment|
US8960533B2|2012-03-19|2015-02-24|Royal Canadian Mint/Monnaie Royale Canadienne|Using bar-codes in an asset storage and transfer system|
US9171327B2|2012-03-23|2015-10-27|Ebay Inc.|Systems and methods for in-vehicle navigated shopping|
US10453105B2|2012-03-30|2019-10-22|Ent. Services Development Corporation Lp|Encrypted payment image|
AU2013239347A1|2012-03-30|2014-11-06|Ip Payovation Pty Ltd|Payment apparatus and method|
US20130282533A1|2012-04-18|2013-10-24|Elizabeth Foran-Owens|Providing an online consumer shopping experience in-store|
KR20140140079A|2012-04-18|2014-12-08|구글 인코포레이티드|Processing payment transactions without a secure element|
US20130282581A1|2012-04-18|2013-10-24|Infosys Limited|Mobile device-based cardless financial transactions|
US20130297509A1|2012-05-07|2013-11-07|Infosys Limited|Mobile payment using dynamic authorization code and multi-payer shared card number|
US10282904B1|2012-05-31|2019-05-07|A9.Com, Inc.|Providing augmented reality view of objects|
US9053312B2|2012-06-19|2015-06-09|Paychief, Llc|Methods and systems for providing bidirectional authentication|
US8997184B2|2012-06-22|2015-03-31|Paychief Llc|Systems and methods for providing a one-time authorization|
US20130346291A1|2012-06-22|2013-12-26|Paychief Llc|Systems and methods for purchasing products or services through the use of a symbology|
US9965760B2|2012-06-29|2018-05-08|Hurricane Electric|Systems and methods for facilitating electronic transactions utilizing a mobile computing device|
US20140006283A1|2012-07-02|2014-01-02|Serve Virtual Enterprises, Inc.|Systems and methods for managing multiple identifiers|
US20140025457A1|2012-07-17|2014-01-23|Mastercard International Incorporated|Method and system for deal redemption by electronic wallet|
US20140025570A1|2012-07-20|2014-01-23|Bank Of America Corporation|Readable indicia for bill payment|
US8839367B2|2012-07-30|2014-09-16|Avalanche Cloud Corporation|Automating calls between separate and distinct applications for invoking an identity verification function|
US20140046854A1|2012-08-10|2014-02-13|Bank Of America Corporation|Readable indicia for advertisements|
US9779396B2|2012-08-14|2017-10-03|Chijioke Chukwuemeka UZO|Method of making mobile payments to a recipient lacking a wireless or contactless terminal|
CA2787817C|2012-08-21|2019-01-08|Dcr Strategies Inc.|Product information and payment system using scanable codes|
US9189785B2|2012-08-24|2015-11-17|Mozido, Inc.|Debit network routing selection using a scannable code|
DE102012108223A1|2012-09-05|2014-03-06|Cadenas Gmbh|Product catalog, method for automatically ordering products represented in a product catalog and computer program product therefor|
AU2013315510B2|2012-09-11|2019-08-22|Visa International Service Association|Cloud-based Virtual Wallet NFC Apparatuses, methods and systems|
US20140074704A1|2012-09-11|2014-03-13|Cashstar, Inc.|Systems, methods and devices for conducting transactions with electronic passbooks|
US20140081783A1|2012-09-14|2014-03-20|Jagadish Bhalchandra Paranjape|Push Payment Processor|
CN102833353A|2012-09-19|2012-12-19|腾讯科技(深圳)有限公司|Resource sharing method and user equipment|
GB2506203B|2012-09-25|2016-12-14|Jaguar Land Rover Ltd|Method of interacting with a simulated object|
US9727872B2|2012-10-04|2017-08-08|Moneygram International, Inc.|Utilizing near field communication to improve customer interactions|
EP2907090A4|2012-10-10|2016-05-18|Mastercard International Inc|Methods and systems for conducting remote point of sale transactions|
US9830632B2|2012-10-10|2017-11-28|Ebay Inc.|System and methods for personalization and enhancement of a marketplace|
US20160155112A1|2012-10-10|2016-06-02|Mastercard International Incorporated|Barcode-triggered payment method and system|
US9665858B1|2012-10-11|2017-05-30|Square, Inc.|Cardless payment transactions with multiple users|
US9082119B2|2012-10-17|2015-07-14|Royal Bank of Canada.|Virtualization and secure processing of data|
US9224184B2|2012-10-21|2015-12-29|Digimarc Corporation|Methods and arrangements for identifying objects|
US9852417B2|2012-11-05|2017-12-26|Mfoundry, Inc.|QR code-enabled P2P payment systems and methods|
US20140143073A1|2012-11-16|2014-05-22|Abraham Doris-Down|Converted Currency Display|
JP5911415B2|2012-12-05|2016-04-27|インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation|System and method for supporting payment by split account|
US20140164219A1|2012-12-06|2014-06-12|American Express Travel Related Services Company, Inc.|Systems and methods for transaction processing based upon encoded data and/or linking instruments|
US8813154B1|2012-12-07|2014-08-19|American Megatrends, Inc.|Injecting a code into video data without or with limited human perception by flashing the code|
US10504163B2|2012-12-14|2019-12-10|Mastercard International Incorporated|System for payment, data management, and interchanges for use with global shopping cart|
US20140172610A1|2012-12-18|2014-06-19|Boopsie, Inc.|Account-based checkout|
US20140188703A1|2012-12-31|2014-07-03|Wing Fung Tse|Streamlined travel payments|
US8972283B2|2013-01-13|2015-03-03|Retail Technologies Corporation|Wearable mobile scanner system with mobile tablet having a mobile POS and enterprise resource planning application for POS customer order fulfillment and in store inventory management for retail establishment|
US10970674B2|2013-01-13|2021-04-06|Retailtechnologies Corporation|Mobile tablet gun system with mobile tablet having a mobile POS and enterprise resource planning application for POS customer order fulfillment and in-store inventory management for retail establishment|
US9092765B2|2013-01-13|2015-07-28|Retail Technologies Corporation|Wearable mobile scanner system with mobile tablet having a mobile POS and enterprise resource planning application for POS customer order fulfillment and method in store inventory management for retail establishment|
US9747632B2|2013-01-13|2017-08-29|Retail Technologies Corporation|Store mobile cloud application system for inventory management and customer order fulfillment and method for retail establishment|
EP2943920B1|2013-01-13|2019-12-11|Retail Technologies Corporation|Mobile bar code scanner gun system with mobile tablet device having a mobile pos|
US10937013B2|2013-01-13|2021-03-02|Retail Technologies Corporation|Point of saledocking station system and method for a mobile tablet gun system with mobile tablet device|
US10453047B2|2013-01-13|2019-10-22|Retail Technologies Corporation|Mobile scanner gun system with mobile tablet having a mobile POS and enterprise resource planning application for POS customer order fulfillment and in store inventory management for retail establishment|
US20140222675A1|2013-02-05|2014-08-07|Shawn Mao|System and method for enabling anonymous money transfer|
GB201302993D0|2013-02-20|2013-04-03|Barclays Bank Plc|Application, method and system for purchasing a product|
US9965756B2|2013-02-26|2018-05-08|Digimarc Corporation|Methods and arrangements for smartphone payments|
US9830588B2|2013-02-26|2017-11-28|Digimarc Corporation|Methods and arrangements for smartphone payments|
US8856033B2|2013-03-01|2014-10-07|Retail Technologies Corporation|Mobile barcode scanner gun system with mobile tablet device having a mobile POS and enterprise resource planning application for customer checkout/order fulfillment and real time in store inventory management for retail establishment|
KR101516773B1|2013-03-06|2015-05-04|홍바울|Payment system using barcode and method thereof|
CN104038469B|2013-03-07|2017-12-29|中国银联股份有限公司|Equipment for safety information interaction|
US20140279499A1|2013-03-12|2014-09-18|Larry J. Kane|Single use qr code authorization system|
US9940616B1|2013-03-14|2018-04-10|Square, Inc.|Verifying proximity during payment transactions|
US9330413B2|2013-03-14|2016-05-03|Sears Brands, L.L.C.|Checkout and/or ordering systems and methods|
US9704146B1|2013-03-14|2017-07-11|Square, Inc.|Generating an online storefront|
US9721244B2|2013-03-15|2017-08-01|Maher Pedersoli|Authentication system|
US10638198B2|2013-03-15|2020-04-28|Ebay Inc.|Shoppable video|
CN105144216A|2013-03-15|2015-12-09|维萨国际服务协会|Snap mobile security apparatuses, methods and systems|
CN104077155B|2013-03-28|2018-09-21|中国银联股份有限公司|The startup of application program in mobile device|
US20140310171A1|2013-04-12|2014-10-16|Bank Of America Corporation|Certified person-to-person payment system|
GB2513602A|2013-05-01|2014-11-05|Barclays Bank Plc|Authentication system for purchase delivery|
CA2851895A1|2013-05-08|2014-11-08|The Toronto-Dominion Bank|Person-to-person electronic payment processing|
US20140351035A1|2013-05-22|2014-11-27|Google Inc.|Auto-redeemable basket level offers in a prepaid architecture|
US9870556B2|2013-05-22|2018-01-16|Google Llc|Split tender in a prepaid architecture|
PL404148A1|2013-05-30|2014-12-08|Agnieszka Piotrowska|The device and way to send personalized messages|
WO2014190386A1|2013-05-31|2014-12-04|Bendigo And Adelaide Bank Limited|A computing device, system, method, computer program and data signal arranged to facilitate the transfer of value|
US20140365341A1|2013-06-05|2014-12-11|Ebay Inc.|Store of the future|
JP2014241025A|2013-06-11|2014-12-25|ソニー株式会社|Information processing apparatus, information processing method, program, and information processing system|
US20160132921A1|2013-06-26|2016-05-12|Scanbuy, Inc.|Methods and systems for redeeming and managing digital coupons|
US20150006385A1|2013-06-28|2015-01-01|Tejas Arvindbhai Shah|Express transactions on a mobile device|
GB201312398D0|2013-07-10|2013-08-21|Powa Technologies Ltd|Electronic transaction validation|
US9582792B2|2013-07-29|2017-02-28|Exxonmobil Research And Engineering Company|System and method to purchase and dispense fuel and other products using a mobile device with improved user experience|
US20150032623A1|2013-07-29|2015-01-29|Mastercard International Incorporated|Systems and methods to enable payments in the absence of a point of sale device|
WO2015017884A1|2013-08-06|2015-02-12|Pidea Pty Ltd|A server implemented method, server, and computer readable storage medium for transmitting document metacontent|
KR20150021312A|2013-08-20|2015-03-02|인스타페이|Mobile card sharing service method and mobile card sharing service system with enhanced security|
KR20150021306A|2013-08-20|2015-03-02|인스타페이|Shopping payment systme and method of using graphical code including bar code or qr code|
US20150066651A1|2013-09-04|2015-03-05|Mastercard International Incorporated|Method and System for Secure Mobile Payment Processing and Data Analytics|
US9898642B2|2013-09-09|2018-02-20|Apple Inc.|Device, method, and graphical user interface for manipulating user interfaces based on fingerprint sensor inputs|
US8777102B1|2013-09-11|2014-07-15|Melvin Patterson|Information processing using machine-readable codes|
US9953311B2|2013-09-25|2018-04-24|Visa International Service Association|Systems and methods for incorporating QR codes|
US20150088676A1|2013-09-26|2015-03-26|Seth Daniel Elliott|Point of sale normalization and extension services|
US20150100486A1|2013-10-04|2015-04-09|Sydney Green|System and method for automatically enrollng an item in a virtual wallet|
KR102174567B1|2013-10-07|2020-11-05|삼성전자주식회사|Electric device and method for displaying payment screen of multiple payment items|
US20150100456A1|2013-10-09|2015-04-09|The Toronto-Dominion Bank|Systems and methods for identifying product recommendations based on investment portfolio data|
US8892462B1|2013-10-22|2014-11-18|Square, Inc.|Proxy card payment with digital receipt delivery|
US10796182B2|2013-10-22|2020-10-06|Hewlett Packard Enterprise Development Lp|Interactive optical codes|
US9836739B1|2013-10-22|2017-12-05|Square, Inc.|Changing a financial account after initiating a payment using a proxy card|
WO2015060821A1|2013-10-22|2015-04-30|Hewlett-Packard Development Company, L.P.|Interactive optical codes|
US9922321B2|2013-10-22|2018-03-20|Square, Inc.|Proxy for multiple payment mechanisms|
US10417635B1|2013-10-22|2019-09-17|Square, Inc.|Authorizing a purchase transaction using a mobile device|
US9721314B2|2013-10-28|2017-08-01|Square, Inc.|Apportioning shared financial expenses|
US10235663B2|2013-11-06|2019-03-19|Tencent TechnologyCompany Limited|Method, system and server system of payment based on a conversation group|
US10217092B1|2013-11-08|2019-02-26|Square, Inc.|Interactive digital platform|
US10963951B2|2013-11-14|2021-03-30|Ebay Inc.|Shopping trip planner|
US9916577B1|2013-11-26|2018-03-13|Wells Fargo Bank, N.A.|Multi channel purchasing for interoperable mobile wallet|
WO2015084712A1|2013-12-02|2015-06-11|Qwasi, Inc.|Systems and methods for text messaging to social networking site to buy|
US10068276B2|2013-12-05|2018-09-04|Walmart Apollo, Llc|System and method for coupling a mobile device and point of sale device to transmit mobile shopping cart and provide shopping recommendations|
US20150161712A1|2013-12-10|2015-06-11|12 RetailLimited|Unifying shopping experience system|
US20150170193A1|2013-12-13|2015-06-18|The Grocer Exchange, LLC|System and method for distributing and processing coupons|
US10185940B2|2013-12-18|2019-01-22|Ncr Corporation|Image capture transaction payment|
US9875469B1|2013-12-24|2018-01-23|Square, Inc.|Bill splitting|
US10810682B2|2013-12-26|2020-10-20|Square, Inc.|Automatic triggering of receipt delivery|
US10621563B1|2013-12-27|2020-04-14|Square, Inc.|Apportioning a payment card transaction among multiple payers|
CN105849748A|2013-12-27|2016-08-10|英派尔科技开发有限公司|Data collection scheme|
CN105850168B|2013-12-31|2019-11-29|华为终端有限公司|A kind of network equipment secure connection method, relevant apparatus and system|
CN104780187B|2014-01-10|2018-11-16|腾讯科技(深圳)有限公司|Linking processing method, device, server, client and system|
US20150199671A1|2014-01-13|2015-07-16|Fidelity National E-Banking Services, Inc.|Systems and methods for processing cardless transactions|
US9311639B2|2014-02-11|2016-04-12|Digimarc Corporation|Methods, apparatus and arrangements for device to device communication|
CN104850370B|2014-02-17|2019-01-15|阿里巴巴集团控股有限公司|The method and device of order information is shown in background display area domain|
US10198731B1|2014-02-18|2019-02-05|Square, Inc.|Performing actions based on the location of mobile device during a card swipe|
US9721248B2|2014-03-04|2017-08-01|Bank Of America Corporation|ATM token cash withdrawal|
US9224141B1|2014-03-05|2015-12-29|Square, Inc.|Encoding a magnetic stripe of a card with data of multiple cards|
US10664833B2|2014-03-05|2020-05-26|Mastercard International Incorporated|Transactions utilizing multiple digital wallets|
KR102144509B1|2014-03-06|2020-08-14|삼성전자주식회사|Proximity communication method and apparatus|
US10692059B1|2014-03-13|2020-06-23|Square, Inc.|Selecting a financial account associated with a proxy object based on fund availability|
US11256798B2|2014-03-19|2022-02-22|Bluefin Payment Systems Llc|Systems and methods for decryption as a service|
US9461973B2|2014-03-19|2016-10-04|Bluefin Payment Systems, LLC|Systems and methods for decryption as a service|
US20150269568A1|2014-03-19|2015-09-24|Capital Payments, LLC|Systems and methods for facilitating decryption of payloads received from encryption devices|
US20150269467A1|2014-03-24|2015-09-24|Exogal, LLC|Retrieving remotely stored information|
US9619792B1|2014-03-25|2017-04-11|Square, Inc.|Associating an account with a card based on a photo|
US9864986B1|2014-03-25|2018-01-09|Square, Inc.|Associating a monetary value card with a payment object|
US20150278840A1|2014-03-25|2015-10-01|Ebay Inc.|Systems and methods for implementing group incentives|
CA2980707A1|2014-03-25|2015-10-01|Botanic Technologies, Inc.|Systems and methods for executing cryptographically secure transactions using voice and natural language processing|
US9785940B2|2014-03-27|2017-10-10|Bank of the Ozarks|System and method for distributed real time authorization of payment transactions|
EP2933766A1|2014-04-17|2015-10-21|Social Nation S.R.L.|Certified identification system and method|
US20150310421A1|2014-04-23|2015-10-29|Rfcyber Corporation|Electronic payment transactions without POS terminals|
US10997592B1|2014-04-30|2021-05-04|Wells Fargo Bank, N.A.|Mobile wallet account balance systems and methods|
CN103985036B|2014-05-09|2017-05-24|杭州晟元数据安全技术股份有限公司|Two-dimension code payment method with biological characteristics|
CN105099688B|2014-05-15|2018-12-21|阿里巴巴集团控股有限公司|A kind of operating method of electronic account, the methods of exhibiting and device for paying the page|
WO2015175619A1|2014-05-15|2015-11-19|Alibaba Group Holdiing Limited|Method, apparatus, and system for operating an electronic account in connection with an electronic transaction|
US20150332223A1|2014-05-19|2015-11-19|Square, Inc.|Transaction information collection for mobile payment experience|
US9483763B2|2014-05-29|2016-11-01|Apple Inc.|User interface for payments|
US10614445B1|2014-06-04|2020-04-07|Square, Inc.|Proximity-based payments|
US20150373048A1|2014-06-24|2015-12-24|Kashif Ali Siddiqui|Enterprise Mobile Notification Solution|
TWI574220B|2014-06-30|2017-03-11|台灣新光保全股份有限公司|Method, apparatus and system of electronic payment|
US20160012399A1|2014-07-09|2016-01-14|Uniloc Luxembourg S.A.|Secure two-stage transactions|
SG11201700142PA|2014-07-11|2017-02-27|Loyyal Corp|Distributed ledger protocol to incentivize transactional and non-transactional commerce|
FR3024575B1|2014-08-01|2016-07-22|Morpho|METHOD FOR COMMUNICATING AN ELECTRONIC TRANSACTION VIA A MOBILE TERMINAL|
US20160034944A1|2014-08-04|2016-02-04|Oren Raab|Integrated mobile listing service|
CN106605201B|2014-08-06|2021-11-23|苹果公司|Reduced size user interface for battery management|
US10885541B1|2014-08-07|2021-01-05|Wells Fargo Bank, N.A.|Payment using rewards points|
US9779345B2|2014-08-11|2017-10-03|Visa International Service Association|Mobile device with scannable image including dynamic data|
US10445739B1|2014-08-14|2019-10-15|Wells Fargo Bank, N.A.|Use limitations for secondary users of financial accounts|
GB2564591A|2014-08-15|2019-01-16|Gelliner Ltd|Bill payment system and method|
GB2530015A|2014-08-15|2016-03-16|Gelliner Ltd|Bill payment system and method|
WO2016036552A1|2014-09-02|2016-03-10|Apple Inc.|User interactions for a mapping application|
US10963868B1|2014-09-09|2021-03-30|Square, Inc.|Anonymous payment transactions|
CN107004195A|2014-09-29|2017-08-01|加拿大皇家银行|The safe handling of data|
CN105528722A|2014-09-29|2016-04-27|阿里巴巴集团控股有限公司|Method and device for sending/receiving data packet, data packet transmission system and mobile equipment|
US20170351824A1|2014-10-20|2017-12-07|William J. DeGasperis|Advance payment processing system computer for medical service provider bills|
US20160125369A1|2014-10-31|2016-05-05|Square, Inc.|Money transfer by use of a payment proxy|
GB2532209A|2014-11-10|2016-05-18|Abrafi Adjaye-Kufuor Akua|Intermediary TV shopping platform for viewers, video game players and consumers|
CN104376464A|2014-11-19|2015-02-25|中城智慧科技有限公司|Safe code scanning payment method|
US11068884B2|2014-12-04|2021-07-20|Hierstar ., Ltd.|E-wallet transfer payment method and system based on PKI smart card|
CN104376455A|2014-12-04|2015-02-25|苏州海博智能系统有限公司|Band card transfer payment method|
US9985699B1|2014-12-16|2018-05-29|Blazer and Flip Flops, Inc.|NFC center|
US10262311B1|2014-12-17|2019-04-16|Blazer and Flip Flops, Inc.|NFC-based payments tagging|
US10580011B1|2014-12-17|2020-03-03|Blazer and Flip Flops, Inc.|NFC-based options selection|
US10679207B1|2014-12-17|2020-06-09|Blazer and Flip Flops, Inc.|Bill splitting and account delegation for NFC|
US10262318B1|2014-12-17|2019-04-16|Blazer and Flip Flops, Inc.|Eligibility verification for real-time offers|
US11062375B1|2014-12-17|2021-07-13|Blazer and Flip Flops, Inc.|Automatic shopping based on historical data|
CN104616167A|2014-12-19|2015-05-13|百度在线网络技术(北京)有限公司|Method and device for providing through service at user equipment and network equipment|
CA2974151A1|2015-01-19|2016-07-28|Royal Bank Of Canada|Secure processing of electronic payments|
US11080701B2|2015-07-02|2021-08-03|Royal Bank Of Canada|Secure processing of electronic payments|
CN105868988A|2015-01-21|2016-08-17|阿里巴巴集团控股有限公司|Method, device and system for protecting user information security|
US9344615B1|2015-01-26|2016-05-17|International Business Machines Corporation|Discriminating visual recognition program for digital cameras|
US20160224973A1|2015-02-01|2016-08-04|Apple Inc.|User interface for payments|
CN104601594B|2015-02-04|2019-05-24|北京奇虎科技有限公司|The identification authentication system and method for OTP token equipment based on two dimensional code|
US9574896B2|2015-02-13|2017-02-21|Apple Inc.|Navigation user interface|
US20160253653A1|2015-02-27|2016-09-01|Visa International Service Association|Payment checkout within an application|
US20160260084A1|2015-03-06|2016-09-08|Mastercard International Incorporated|Secure mobile remote payments|
US10825038B2|2015-03-11|2020-11-03|Comenity Llc|Providing mobile loyalty services via a native mobile application|
US11037139B1|2015-03-19|2021-06-15|Wells Fargo Bank, N.A.|Systems and methods for smart card mobile device authentication|
US11188919B1|2015-03-27|2021-11-30|Wells Fargo Bank, N.A.|Systems and methods for contactless smart card authentication|
US10043162B1|2015-03-31|2018-08-07|Square, Inc.|Open ticket payment handling with bill splitting|
US10528945B1|2015-03-31|2020-01-07|Square, Inc.|Open ticket payment handling with incremental authorization|
US11127009B2|2015-04-07|2021-09-21|Omnyway, Inc.|Methods and systems for using a mobile device to effect a secure electronic transaction|
EP3082076A1|2015-04-13|2016-10-19|Amadeus S.A.S.|A system and method for booking a travel product|
US10163083B2|2015-04-13|2018-12-25|Bank Of America Corporation|Account activity management system|
US10038716B2|2015-05-01|2018-07-31|Hand Held Products, Inc.|System and method for regulating barcode data injection into a running application on a smart device|
US9690968B2|2015-05-17|2017-06-27|William A. Wadley|Authenticated scannable code system|
US10600039B2|2015-05-20|2020-03-24|Mastercard International Incorporated|Systems and methods for managing financial payments between parties|
US10026062B1|2015-06-04|2018-07-17|Square, Inc.|Apparatuses, methods, and systems for generating interactive digital receipts|
US9940637B2|2015-06-05|2018-04-10|Apple Inc.|User interface for loyalty accounts and private label accounts|
WO2016197115A1|2015-06-05|2016-12-08|Arris Enterprises Llc|Virtual wallet for set-top-box|
US20160358133A1|2015-06-05|2016-12-08|Apple Inc.|User interface for loyalty accounts and private label accounts for a wearable device|
US20170124564A1|2015-06-11|2017-05-04|APPI Tecnologia S/A d.b.a. MUXI|Point of Sale Apparatuses, Methods and Systems|
GB201510347D0|2015-06-12|2015-07-29|Mastercard International Inc|Methods and systems for reporting transaction issues|
US10510057B2|2015-06-17|2019-12-17|Scvngr, Inc.|Token-based gift cards|
US10803432B1|2015-06-19|2020-10-13|Stanley Kevin Miles|Systems and methods for automatic triggering of a code scanning application by a user application|
CN104881502A|2015-06-23|2015-09-02|上海众人科技有限公司|System and method for quickly acquiring commodity purchasing address|
US20160379204A1|2015-06-26|2016-12-29|Ncr Corporation|Multi-biller payment systems and methods|
WO2017006194A1|2015-07-07|2017-01-12|DOWNER, Albert|System of payment made in real time|
ES2559851B1|2015-07-08|2016-11-23|Universitat De Les Illes Balears|Method and system for obtaining sensitive information via mobile device|
US10853773B2|2015-07-13|2020-12-01|Disney Enterprises, Inc.|Methods and systems for conducting multi-user interactions on a device using biometric authentication|
WO2017011790A1|2015-07-16|2017-01-19|Equipay, Llc|Electronic payment system and methods of processing an electronic payment|
US20170053301A1|2015-08-20|2017-02-23|NeuPay, Inc.|Systems for performing secure mobile payment and non-payment transactions with integrated loyalty, rewards and promotions|
WO2017031481A1|2015-08-20|2017-02-23|Omnypay, Inc.|Methods and systems for performing secure mobile payment and non-payment transactions with integrated loyalty, rewards, and promotions|
US10666760B2|2015-08-31|2020-05-26|Ebay Inc.|Passive social media contact engagement|
US11188988B2|2015-08-31|2021-11-30|Ebay Inc.|Image generation for social media contact engagement|
WO2017044981A1|2015-09-10|2017-03-16|Omnypay, Inc.|Methods and systems for communicating scanned item information between merchant equipment for scanning or selecting an item and a mobile device|
US10249002B2|2015-09-11|2019-04-02|Bank Of America Corporation|System for dynamic visualization of individualized consumption across shared resource allocation structure|
US20170076366A1|2015-09-11|2017-03-16|Bank Of America Corporation|Universal tokenization system|
CN111666518A|2015-09-21|2020-09-15|阿里巴巴集团控股有限公司|DOI display method and device|
JP6290151B2|2015-09-28|2018-03-07|東芝テック株式会社|Checkout system, product registration device, settlement device, and electronic receipt management device|
US10049349B1|2015-09-29|2018-08-14|Square, Inc.|Processing electronic payment transactions in offline-mode|
US9569757B1|2015-09-30|2017-02-14|Square, Inc.|Anticipatory creation of point-of-sale data structures|
MX2018004496A|2015-10-12|2018-11-09|Walmart Apollo Llc|Check-in to checkout systems and methods.|
MX2018004495A|2015-10-12|2018-09-21|Walmart Apollo Llc|Common interface/experience for mobile wallet systems and methods.|
CN106709825A|2015-11-13|2017-05-24|湖南餐启科技有限公司|Material purchasing method based on cloud platform and system thereof|
GB2557108A|2015-11-17|2018-06-13|Gelliner Ltd|Payment confirmation system and method|
US10210582B2|2015-12-03|2019-02-19|Mastercard International Incorporated|Method and system for platform data updating based on electronic transaction product data|
CN105894266A|2015-12-04|2016-08-24|乐视网信息技术(北京)股份有限公司|Two-dimensional code generation method, information processing method and device and information system|
US10489777B2|2016-01-05|2019-11-26|Visa International Service Association|Universal access to an electronic wallet|
US10977639B2|2016-01-25|2021-04-13|Freelancer Technology Pty Limited|Adaptive gateway switching system|
SG10201600938YA|2016-02-05|2017-09-28|Mastercard International Inc|Method And System For Point Of Sale Payments|
US10373199B2|2016-02-11|2019-08-06|Visa International Service Association|Payment device enrollment in linked offers|
CN107204957B|2016-03-16|2020-04-28|阿里巴巴集团控股有限公司|Account binding and service processing method and device|
US10636019B1|2016-03-31|2020-04-28|Square, Inc.|Interactive gratuity platform|
WO2017167273A1|2016-04-01|2017-10-05|腾讯科技(深圳)有限公司|Service processing method and apparatus|
US11113688B1|2016-04-22|2021-09-07|Wells Fargo Bank, N.A.|Systems and methods for mobile wallet provisioning|
CN105869080A|2016-04-25|2016-08-17|海南客来乐科技有限公司|System and method for realizing physical store mobile payment through electronic table plates and electronic table plate|
US10460367B2|2016-04-29|2019-10-29|Bank Of America Corporation|System for user authentication based on linking a randomly generated number to the user and a physical item|
DK179186B1|2016-05-19|2018-01-15|Apple Inc|REMOTE AUTHORIZATION TO CONTINUE WITH AN ACTION|
US9948673B2|2016-05-26|2018-04-17|Visa International Service Association|Reliable timestamp credential|
US10621581B2|2016-06-11|2020-04-14|Apple Inc.|User interface for transactions|
DK201670622A1|2016-06-12|2018-02-12|Apple Inc|User interfaces for transactions|
US10289992B1|2016-06-17|2019-05-14|Square, Inc.|Kitchen display interfaces with in flight capabilities|
US10268635B2|2016-06-17|2019-04-23|Bank Of America Corporation|System for data rotation through tokenization|
US11068899B2|2016-06-17|2021-07-20|Visa International Service Association|Token aggregation for multi-party transactions|
US10311420B1|2016-06-17|2019-06-04|Square, Inc.|Synchronizing open ticket functionality with kitchen display systems|
US10360648B1|2016-06-22|2019-07-23|Square, Inc.|Synchronizing KDS functionality with POS waitlist generation|
US10580062B1|2016-06-28|2020-03-03|Square, Inc.|Integrating predefined templates with open ticket functionality|
CN106204041B|2016-07-14|2018-10-19|腾讯科技(深圳)有限公司|Card certificate uses system, method and device|
US9842330B1|2016-09-06|2017-12-12|Apple Inc.|User interfaces for stored-value accounts|
US20180084392A1|2016-09-19|2018-03-22|Ebay Inc.|Text messaging hub system providing access to local and remote service applications|
US10171431B2|2016-09-21|2019-01-01|International Business Machines Corporation|Secure message handling of an application across deployment locations|
US20180096434A1|2016-10-05|2018-04-05|The Toronto-Dominion Bank|System and Method for Controlling Access to Content to be Displayed on an Electronic Display|
CN106571999B|2016-10-21|2018-01-05|北京三快在线科技有限公司|Task management method, client and server based on instant communication information|
US10496808B2|2016-10-25|2019-12-03|Apple Inc.|User interface for managing access to credentials for use in an operation|
CA3042534A1|2016-11-07|2018-05-11|Walmart Apollo, Llc|Reducing cybersecurity risks when purchasing products over a network|
US11170363B1|2016-11-28|2021-11-09|Wells Fargo Bank, N.A.|Secure processing of online purchase using a mobile wallet|
US11151591B2|2016-12-06|2021-10-19|Verizon Media Inc.|Dynamic scan code generation|
CN107067240B|2016-12-12|2020-09-08|创新先进技术有限公司|Resource allocation method and device and electronic payment method|
US10475031B2|2016-12-14|2019-11-12|Target Brands, Inc.|Conducting secure retail transactions using a mobile wallet system|
US10586293B1|2016-12-22|2020-03-10|Worldpay, Llc|Systems and methods for personalized dining and individualized ordering by associating electronic device with dining session|
US10997595B1|2016-12-28|2021-05-04|Wells Fargo Bank, N.A.|Systems and methods for preferring payments using a social background check|
CN110088790A|2017-01-03|2019-08-02|维萨国际服务协会|Merchant registration for reverse payments|
US10915881B2|2017-01-27|2021-02-09|American Express Travel Related Services Company, Inc.|Transaction account charge splitting|
CN108513041B|2017-02-28|2021-04-13|京瓷办公信息系统株式会社|Image forming system, terminal, server, image forming apparatus, and image forming method|
US20180253705A1|2017-03-01|2018-09-06|Jpmorgan Chase Bank, N.A.|Systems and methods for dynamic inclusion of enhanced data in transactions|
SG10201701882YA|2017-03-08|2018-10-30|Mastercard Asia/Pacific Pte Ltd|Customer-initiated payment system and process|
US10579621B2|2017-03-31|2020-03-03|Microsoft Technology Licensing, Llc|Implicit query generation based on physical movement|
WO2018187300A1|2017-04-03|2018-10-11|Systems And Software Enterprises, Llc|Systems and methods for cryptocurrency transactions in aircraft|
US10536466B1|2017-04-26|2020-01-14|Branch Banking And Trust Company|Risk assessment of electronic communication using time zone data|
WO2018223130A1|2017-06-02|2018-12-06|Bluefin Payment Systems Llc|Systems and methods for managing a payment terminal via a web browser|
US20190019209A1|2017-07-17|2019-01-17|Tao Xu|Electronic Promotion System and Method|
WO2019027569A1|2017-08-01|2019-02-07|Google Llc|Machine-readable code processing|
US10853965B2|2017-08-07|2020-12-01|Standard Cognition, Corp|Directional impression analysis using deep learning|
US10445694B2|2017-08-07|2019-10-15|Standard Cognition, Corp.|Realtime inventory tracking using deep learning|
US11250376B2|2017-08-07|2022-02-15|Standard Cognition, Corp|Product correlation analysis using deep learning|
US11023850B2|2017-08-07|2021-06-01|Standard Cognition, Corp.|Realtime inventory location management using deep learning|
US10650545B2|2017-08-07|2020-05-12|Standard Cognition, Corp.|Systems and methods to check-in shoppers in a cashier-less store|
US11200692B2|2017-08-07|2021-12-14|Standard Cognition, Corp|Systems and methods to check-in shoppers in a cashier-less store|
US10474991B2|2017-08-07|2019-11-12|Standard Cognition, Corp.|Deep learning-based store realograms|
US11232687B2|2017-08-07|2022-01-25|Standard Cognition, Corp|Deep learning-based shopper statuses in a cashier-less store|
US10474988B2|2017-08-07|2019-11-12|Standard Cognition, Corp.|Predicting inventory events using foreground/background processing|
EP3454277A1|2017-09-07|2019-03-13|Mastercard Asia/Pacific Pte. Ltd|Transaction system architecture and methods|
KR20200136504A|2017-09-09|2020-12-07|애플 인크.|Implementation of biometric authentication|
KR102301599B1|2017-09-09|2021-09-10|애플 인크.|Implementation of biometric authentication|
US10579979B2|2017-09-20|2020-03-03|Paypal, Inc.|Dynamically adjusting visual codes displayed on a device|
US20190095886A1|2017-09-22|2019-03-28|Mastercard International Incorporated|Optical-scan triggered electronic funds transfer for purchase transaction|
US10943311B1|2017-09-29|2021-03-09|Square, Inc.|Order fulfillment and tracking systems and methods|
US10467559B1|2017-09-29|2019-11-05|Square, Inc.|Order fulfillment and tracking systems and methods|
US10692077B2|2017-10-25|2020-06-23|Mastercard International Incorporated|Method and system for conveyance of machine readable code data via payment network|
CN113609477A|2017-10-27|2021-11-05|数字资产股份有限公司|Computer system and method for distributed privacy-preserving shared execution of one or more processes|
US10445629B2|2017-11-20|2019-10-15|Mastercard International Incorporated|Secure QR code service|
US20190164165A1|2017-11-28|2019-05-30|Ca, Inc.|Cross-device, multi-factor authentication for interactive kiosks|
US10869194B2|2017-12-22|2020-12-15|Dish Network L.L.C.|Devices, systems, and processes for authenticating devices|
US10929838B2|2018-01-19|2021-02-23|Leadot Innovation, Inc.|Card not present transaction system and method for operating card not present transaction system to simplify hardware required at client sites|
EP3729781A1|2018-01-22|2020-10-28|Apple Inc.|Secure login with authentication based on a visual representation of data|
US11055790B2|2018-01-29|2021-07-06|Mastercard International Incorporated|Systems and methods for providing an indication of local sales tax rates to a user|
US20210365923A1|2018-03-08|2021-11-25|Mastercard International Incorporated|Code-enabled and push request payment transaction methods|
US20190318382A1|2018-04-11|2019-10-17|Intel Corporation|Secure visual transactions for mobile devices|
US11074577B1|2018-05-10|2021-07-27|Wells Fargo Bank, N.A.|Systems and methods for making person-to-person payments via mobile client application|
US11079919B1|2018-05-10|2021-08-03|Wells Fargo Bank, N.A.|Personal computing devices with improved graphical user interfaces|
USD916862S1|2018-05-10|2021-04-20|Wells Fargo Bank, N.A.|Display screen or portion thereof with graphical user interface|
US11170085B2|2018-06-03|2021-11-09|Apple Inc.|Implementation of biometric authentication|
US11182763B1|2018-06-07|2021-11-23|Averigo LLC|Micromarket security system and method|
WO2019246114A1|2018-06-19|2019-12-26|GPSspecial, LLC.|Geofence-based location tracking and notification triggering system|
US20200074441A1|2018-08-29|2020-03-05|Mastercard International Incorporated|Systems and Methods for Use in Contactless Communication|
WO2020061239A1|2018-09-18|2020-03-26|Mx Technologies, Inc.|Virtual subaccounts|
US11227252B1|2018-09-28|2022-01-18|The Descartes Systems Group Inc.|Token-based transport rules|
US11210654B2|2018-10-23|2021-12-28|Capital One Services, Llc|Systems and methods for multicomputer data transferring to activate contactless communication|
TWI674542B|2018-10-23|2019-10-11|臺灣行動支付股份有限公司|Mobile payment transaction system and data processing method thereof without transaction winding operation|
US11210730B1|2018-10-31|2021-12-28|Square, Inc.|Computer-implemented methods and system for customized interactive image collection based on customer data|
US11244382B1|2018-10-31|2022-02-08|Square, Inc.|Computer-implemented method and system for auto-generation of multi-merchant interactive image collection|
US20200160341A1|2018-11-16|2020-05-21|Visa International Service Association|System, Computer Program Product, and Method for Authorization Rate Prediction|
US11138680B1|2018-11-21|2021-10-05|Square, Inc.|Updating menus based on predicted efficiencies|
CN109598515B|2018-11-29|2020-08-04|阿里巴巴集团控股有限公司|Payment method, payment device and terminal equipment|
US10915905B1|2018-12-13|2021-02-09|Square, Inc.|Batch-processing transactions in response to an event|
US11126861B1|2018-12-14|2021-09-21|Digimarc Corporation|Ambient inventorying arrangements|
CN109785051A|2018-12-25|2019-05-21|南京硅基智能科技有限公司|A method of interactive voice is carried out to market based on two dimensional code|
US10902433B2|2019-01-14|2021-01-26|American Express Travel Related Services Company, Inc.|Motion-enabled transaction system using air sign symbols|
US20200302517A1|2019-03-24|2020-09-24|Apple Inc.|User interfaces for managing an account|
US11232575B2|2019-04-18|2022-01-25|Standard Cognition, Corp|Systems and methods for deep learning-based subject persistence|
US11070534B2|2019-05-13|2021-07-20|Bluefin Payment Systems Llc|Systems and processes for vaultless tokenization and encryption|
WO2020243716A1|2019-05-30|2020-12-03|nJoy Worldwide, Inc.|Location based mobile messaging shopping network|
US11144944B1|2019-05-31|2021-10-12|Inmar Clearing, Inc.|System for determining a substitute grocery item based upon a determined medication interaction and related methods|
FR3098069A1|2019-06-25|2021-01-01|Ingenico Group|System and method for exchanging payment data between a cash register and an electronic payment acquisition device|
US10839369B1|2019-07-22|2020-11-17|Capital One Services, Llc|Dynamic electronic communication with variable messages using encrypted quick response codes|
US11250414B2|2019-08-02|2022-02-15|Omnyway, Inc.|Cloud based system for engaging shoppers at or near physical stores|
US10909525B1|2019-11-27|2021-02-02|Square, Inc.|Account actions based on interactions with NFC-enabled card|
MX2019014846A|2019-12-09|2020-02-12|Todito Pagos S A De C V|Method and system for crediting an award in an electronic purse account.|
WO2021167582A1|2020-02-17|2021-08-26|Visa International Service Association|System, method, and computer program product for integrating queuing with payment transactions|
WO2021176429A1|2020-03-06|2021-09-10|Dops RewardsLtd.|Method and system of issuing a payment token|
US11055692B1|2020-09-10|2021-07-06|Square, Inc.|Application integration for contactless payments|
CN113382373A|2021-06-09|2021-09-10|中国银行股份有限公司|Monitoring device, system and method for bank peripheral system|
法律状态:
2020-11-03| B08F| Application dismissed because of non-payment of annual fees [chapter 8.6 patent gazette]|Free format text: REFERENTE A 8A ANUIDADE. |
2021-02-23| B08K| Patent lapsed as no evidence of payment of the annual fee has been furnished to inpi [chapter 8.11 patent gazette]|Free format text: EM VIRTUDE DO ARQUIVAMENTO PUBLICADO NA RPI 2600 DE 03-11-2020 E CONSIDERANDO AUSENCIA DE MANIFESTACAO DENTRO DOS PRAZOS LEGAIS, INFORMO QUE CABE SER MANTIDO O ARQUIVAMENTO DO PEDIDO DE PATENTE, CONFORME O DISPOSTO NO ARTIGO 12, DA RESOLUCAO 113/2013. |
2021-12-07| B350| Update of information on the portal [chapter 15.35 patent gazette]|
优先权:
申请号 | 申请日 | 专利标题
US201161443624P| true| 2011-02-16|2011-02-16|
US61/443,624|2011-02-16|
US201161512248P| true| 2011-07-27|2011-07-27|
US61/512,248|2011-07-27|
US201161522213P| true| 2011-08-10|2011-08-10|
US61/522,213|2011-08-10|
US201161527576P| true| 2011-08-25|2011-08-25|
US61/527,576|2011-08-25|
PCT/US2012/025530|WO2012112822A2|2011-02-16|2012-02-16|Snap mobile payment apparatuses, methods and systems|
[返回顶部]